我正在尝试对地图中的一些向量进行排序,但是当我运行程序时出现分段错误。
typedef map<int, vector<int> > Map;
Map m;
for (Map::iterator it = m.begin(); it != m.end(); ++it) {
sort(it->second.begin(), it->second.end());
}
就在排序之前,我有一个插入数据的部分:
int x = 2;
int y = 3;
map<int, vector<int> >::iterator itTemp;
itTemp = FontaneMapX.find(x);
if (itTemp == m.end())
itTemp = m.insert(make_pair(x,vector<int>())).first;
itTemp->second.push_back(y);
在本节之后,我不会删除/添加项目,而不是对地图内的向量进行事件。
关于我应该改变什么的任何想法?