c++ - 当一个元素从两者之间移除时,STL<vector> 中会发生什么?

标签 c++ memory-management vector stl

由于 STL vector 的内存位置是连续的,其余元素是否向后移动了一步? STL 库编写者是如何实现它的?

最佳答案

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

关于c++ - 当一个元素从两者之间移除时,STL<vector> 中会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14142137/

相关文章:

c++ - Arduino液晶显示屏: Generate a navigation menu by reading an array

c++ - 将数组存储在 vector 中并对元素进行排序

c++ - 如何使用存储在列表中的特定范围的元素初始化 vector ?

c++ - 如何使构造函数接受 std::function 也接受方法指针

c++ - 这行代码是什么意思*((int*)(0))=1;?

c++ - C++ 允许 CTFE 吗?

python - 为什么两个相同的列表有不同的内存占用?

c - 如果我尝试访问超出 malloc() 区域的内存,会发生什么情况?

c++ - objective-c ++ 运算符删除

c++ - vector 的两个特征之间的差异