您的位置:首页
STL在迭代的过程中,删除指定的元素
2017-05-28 14:02
363 查看
直接上Code,上 Picture
执行结果:
#include <iostream> #include <list> using namespace std; // STL在迭代的过程中,删除指定的元素 int main() { list<int> listTest; listTest.push_back(-1); listTest.push_back(-1); listTest.push_back(-1); listTest.push_back(-1); cout<<"list size: "<<listTest.size()<<endl; list<int>::iterator itList; for (itList=listTest.begin(); itList != listTest.end(); /*no itList++ !!*/ ) { cout<<"data: "<<*itList<<endl; // 第一种方法 if (*itList <= 0) itList = listTest.erase(itList); else ++itList; } cout<<"list size: "<<listTest.size()<<endl; cout<<"======================================"<<endl; listTest.push_back(-1); listTest.push_back(-1); listTest.push_back(-1); listTest.push_back(1); cout<<"list size: "<<listTest.size()<<endl; for (itList=listTest.begin(); itList != listTest.end(); ++itList) { cout<<"data: "<<*itList<<endl; // 另外一种方法 if (*itList <= 0) *itList = 0; // 做个记录标志,等待迭代完进行回收 } listTest.remove(0); // 回收 0 cout<<"list size: "<<listTest.size()<<endl; cout<<"======================================"<<endl; return 0; }
执行结果:
相关文章推荐
- STL在迭代的过程,删除指定的元素
- STL容器迭代过程中删除元素技巧
- STL容器迭代过程中删除元素技巧(转)
- STL容器迭代过程中删除元素技巧(转)
- STL容器迭代过程中删除元素技巧(转)
- STL容器迭代过程中删除元素技巧(转)
- STL容器迭代过程中删除元素技巧
- STL容器迭代过程中删除元素技巧(转)
- stl在遍历过程中删除元素
- STL链表之删除指定元素(list)
- Iterator对象的remove方法是迭代过程中删除元素的唯一方法
- 为什么java中迭代过程中不可以不可以添加或删除元素
- stl在遍历过程中删除元素
- STL容器:在遍历的过程中删除元素
- 迭代时删除指定元素
- STL:map的使用:删除map中指定值为value的所有元素
- Java中List迭代过程中删除、新增元素的处理
- STL删除指定元素
- [STL] 从map中删除指定value的元素
- STL容器迭代删除元素