【发布时间】:2014-01-25 15:17:16
【问题描述】:
在 GCC 的实现中,std::string 和 std::vector 的重新分配策略是什么?
我对所采用的特定策略感兴趣:当我将项目附加到向量(或将字符附加到字符串)时,它可能会超过保留的大小,然后会发生重新分配,但是作为函数的新大小是多少旧的?在删除元素的情况下,实际重新分配和释放内存的阈值是多少(新大小又是多少)?
其他编译器的答案也将不胜感激。
【问题讨论】:
-
为了澄清这个问题(根据@Paul 的解决方案),我对如何避免重新分配不感兴趣,而是学习实施使用的策略。