对于vector一般不要用erase(),因为很多情况下他要和<algorithm>中的
C++ STL中的remove和erase函数曾经让我迷惑,同样都是删除,两者有什么区别呢?
没有重新分配。但是后续的元素被往前移动,因此被删除的元素之后的迭代器会失效。例如,下面的代码在deb
C++ STL中的remove和erase函数曾经让我迷惑,同样都是删除,两者有什么区别呢? ve
uiyoiulo;piohjhlgphohtg[;gukohkijppg=t-[y=ftu]py;l
你不会是在循环里用erase吧。 这样的原先的迭代器就失效了。 你说的delete是什么?
vector中的remove的作用是将等于value的元素放到vector的尾部,但并不减少vect
是返回end()但是你的错误是由于iterators 类型不匹配造成的。 iter是一个const
C++ STLremoveerase函数曾经让我迷惑同都删除两者区别呢 vectorremov
理论是可以的。比如: #include <list>template<typena