我刚接触C++,希望避免新手常见性能陷阱。
从向量中删除元素是否可能导致内存重新分配?
我正在编写一个函数,将向量添加元素,并在同一帧中可能删除一些元素。
不,它并没有。如果是的话,会使所有迭代器失效,但正如cppreference所述,它只会使得被删除的位置之后(包括end()迭代器)的迭代器和引用失效。