删除某个map中某个条目用函数erase()。该成员方法的定义如下:
1.iterator erase(iterator it); //通过一个条目对象删除
2.iterator erase(iterator first, iterator last); //删除一个范围
3.size_type erase(const Key& key); //通过关键字删除
以下主要介绍在遍历map时删除特定元素。
在遍历map过程中删除map元素时,需要先将要删除的迭代器保存下来,然后将用于遍历map的迭代器指向下一个位置,最后删除掉保存下来的迭代器,具体可以参考如下代码。
#include <map>
#include <iostream>
using namespace std;
int main()
{
map<int, int> map1;
map<int, int>::iterator mapit;
map<int, int>::iterator saveit;
map1[1] = 1;
map1[2] = 2;
map1[3] = 3;