您的位置:首页 > 其它

map删除元素时防止迭代器失效的例子

2016-02-25 09:43 316 查看
很好的例子,供大家参考。
#include <map>
#include <iostream>
#include <stdio.h>
#include <string>
#include <map>
using namespace std;

int main()
{
    map<int,int> _map;
    for (int i = 0; i < 10; i++)
    {
        _map.insert(make_pair(i,i+1));
    }

    for (map<int,int>::iterator iter = _map.begin(); iter != _map.end();)
    {
        if (iter->first % 3 == 0)
        {
            _map.erase(iter++);
        }
        else
        {
            iter++;
        }
    }

    for (map<int,int>::iterator iter = _map.begin(); iter != _map.end(); ++iter)
    {
        cout<<iter->first<<endl;
    }
    return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: