【发布时间】:2023-03-20 22:15:02
【问题描述】:
我的问题是关于vector::push_back 的效果,我知道它在向量的末尾添加了一个元素,但引擎盖下会发生什么?
IIRC 内存对象是按顺序分配的,所以我的问题是vector::push_back 是否只是在向量之后立即分配更多内存,如果是这样,如果该位置没有足够的可用内存会发生什么情况?或者也许在“结束”中添加了一个指针以使向量“跳跃”到它继续的位置?或者它只是通过将其复制到另一个有足够空间的位置而重新分配并且旧副本被丢弃?还是别的什么?
【问题讨论】: