我想知道在删除任意元素后是否始终保留std :: vector容器元素的顺序(例如:push 0,1,2,3,erase 1,get 0,2, 3)。
答案 0 :(得分:1)
是的,确实如此。还要注意复杂性(第23.3.6.5节):
复杂性:T的析构函数被称为等于的次数 删除的元素数量,但移动赋值运算符 T被称为次数等于中的元素数量 擦除元素后的矢量。
和迭代器失效:
E ff ects:在点或之后使迭代器和引用无效 擦除。
如果您不想查看标准以查看此类详细信息并且不自信,请查看此reference site。