std::map的操作:插入、修改、删除和遍历

using namespace std;

std::map<int,int> m_map;

1、添加

for(int i=0;i<10;i++)

{

  m_map.insert(make_pair(i,i));

}

2、修改

std::map<int,int>::iterator iter;

for(iter=m_map.begin();iter != m_map.end();iter++)

{

  int& i=iter->second;//这个地方用别名,就可以修改了

  i++;

}

3、删除

std::map<int,int>::iterator iter;

for(iter=m_map.begin();iter != m_map.end();)

{

  m_map.erase(iter++);//++放在这里,放在for的最后面会出错

}

4、遍历

std::map<int,int>::iterator iter;

for(iter=m_map.begin();iter != m_map.end();)

{

  int key   = iter->first;//插入的时候用make_pair,取的时候要用first和second

  int value = iter->second;

}

原文地址:https://www.cnblogs.com/zhangnianyong/p/5619690.html