作为this问题的续篇,我正在尝试访问地图。但是我得到了一个分段错误。下面是我的代码:
typedef multimap<string, vector<string> > mos_map;
typedef multimap<string, vector<string> >::iterator mos_map_it;
int main()
{
mos_map mos;
mos_map_it it;
vector<string> v1;
v1.push_back("a");
v1.push_back("b");
v1.push_back("c");
v1.push_back("mo1");
mos.insert(mos_map::value_type(*(v1.end()-1),v1));
for(it=mos.begin();it!=mos.end();it++);
{
cout<<(*it).first<<endl;//seg fault occurs here
}发布于 2013-06-28 18:37:42
for(it=mos.begin();it!=mos.end();it++);
// ^您的循环具有空体。
一些小贴士:
警告: for循环的主体为空-Wempty- body
for(auto it = mos.begin();it != mos.end();it++);{ cout << (*it).first << endl;}
此代码将导致编译时错误:
错误:使用未声明的标识符'it'
https://stackoverflow.com/questions/17362720
复制相似问题