C++容器vector和map的正确删除方法
来源:互联网 发布:冷钢刀怎么样啊 知乎 编辑:程序博客网 时间:2024/06/05 22:45
- // vector删除指定元素
- vector<int>::iterator iter = arr.begin();
- while (true)
- {
- if (iter == arr.end()) break;
- if (*iter == 10)
- {
- iter = arr.erase(iter); //迭代器删除之后会往下一个移动,这个时候返回新的位置
- //arr.erase(iter);iter++; //此种方法不可行,因为删除该迭代器指向的对象后,迭代器失效,再继续
- continue;
- }
- ++iter;
- }
- // map删除指定元素方法
- map<int, int>::iterator iter = m.begin();
- for (; iter != m.end();)
- {
- if (iter->second == 1)
- {
- iter = m.erase(iter); //关联容器的erase方法没有返回值,对于map删除iterator只会影响当前的迭代器
- //或者: m.erase(iter++); //更推荐的做法是在erase前让iterator指向下一个元素
- }
- else
- {
- ++iter;
- }
- }
原文地址:http://blog.csdn.net/shan165310175/article/details/38390423
0 0
- C++容器vector和map的正确删除方法
- C++容器vector和map的正确删除方法
- vector和map 容器的区别
- vector和map 容器的区别
- C++--vector<>容器,List<>链表,map<>容器的用法
- c++<map>容器的方法
- C++ map正确的遍历删除方法
- map和vector删除元素的区别
- vector、map容器删除操作总结
- vector、map容器删除操作总结
- map容器和vector的结合使用(UVA 11991)
- C++MAP和vector的用法
- 【C++】循环删除vector等容器内的元素
- map和vector的查找方法
- vector向量容器的删除
- C++ set map list的正确删除元素方法
- STL容器vector内存的正确释放
- STL中vector和map的查找和删除
- HTML5第一个项目:HelloWorld!
- tar详解
- ERROR 1045 (28000): Access denied for user 'root'@'192.168.8.123' (using password: NO)
- 配置myeclipse虚拟机内存
- 【深入Java虚拟机】之二:Class类文件结构
- C++容器vector和map的正确删除方法
- HDU2098
- yii2.0文件如何在php命令行中运行
- Notification(通知栏通知)
- IPython下执行shell命令-魔力函数(alias store rehash)- 千月的python linux 系统管理指南学习笔记(6)
- 360如何用QConf搞定2W+服务器的配置管理
- 【深入Java虚拟机】之一:Java内存区域与内存溢出
- scala 初探(二)
- 集训队测试总结合集