【发布时间】:2018-01-13 08:15:20
【问题描述】:
我在下面使用 stl 声明了一个地图,并在其中插入了一些值。
#include<bits/stdc++.h>
int main()
{
map<int,int> m;
m[1]=1;
m[2]=1;
m[3]=1;
m[4]=1;
m[5]=1;
m[6]=1;
for(auto it=m.begin();it!=m.end();)
{
cout<<it->first<<" "<<it->second<<endl;
it=it++;
}
return 0;
}
当我执行上面编写的代码时,它最终陷入了无限循环。有人能告诉我为什么会这样吗? 我正在递增迭代器的值,然后将其存储在其中,下次执行循环时应该递增,最终它应该正常终止。我错了吗?
【问题讨论】:
标签: c++11