当从中间删除元素时,STL <vector>会发生什么?</vector>

时间:2013-01-03 15:40:39

标签: c++ memory-management vector stl

由于内存位置对于stl向量是连续的,其余元素向后移动一步? stl库编写器是如何实现它的?

2 个答案:

答案 0 :(得分:6)

所有后续元素都向后移动一步。 Vector保证将其元素保存在连续的内存块中,因此不允许内部漏洞。

答案 1 :(得分:1)

是的,擦除元素后面的元素移动了一个位置。这是在std::vector提供的保证下实施的唯一方式。

相关问题