更改矢量内存分配策略

Change vector memory allocation strategy?

本文关键字:分配 策略 内存      更新时间:2023-10-16

有没有办法改变向量内存分配策略? 使用您自己的策略,而不是在调整大小时将向量大小加倍。

(这里有一个关于内存分配的很好的解释)

No.没有标准的方式来影响std::vector的增长战略。

至少,没有保证降低增长率的方法。您可以在添加增长触发元素之前使用reserve,这有效地允许您控制增长率的下限。

而不是在调整大小时将矢量大小加倍

这不一定是向量实现使用的策略。

据我所知,除非你自己实现向量,否则 c++ 中不允许更改向量内存增加策略。

如果确实想控制向量内存增加策略,可以使用保留。