假设我有我的代码映射:如果“key”不存在,map :: find()会返回什么样的值?
map <string, set<string> > myMap;
...我想从图中的元素:
myMap.find("key");
我的问题是:什么样的价值将MYMAP回报如果“钥匙”不存在? `
///编辑 任何人都可以指出错误的原因吗?编译器没有看到任何错误,但服务器测试整个算法,不接受它因为这个功能。
map< string, set<string> >::iterator mapIterator = container.find(key);
if(mapIterator != container.end()){
set<string>::iterator setIterator = mapIterator->second.begin();
if(!mapIterator->second.empty()){
while(setIterator != mapIterator->second.end()){
cout << *setIterator << endl;
++setIterator;
}
}else{
.......
}
}else{
..........
}
我相信它会返回地图::结束 – ultifinitus
的可能重复(http://stackoverflow.com/questions/10124679/what-happens-if-i-read-a-maps-value-where-key-does-exist) – honk
请参阅http://en.cppreference.com/w/cpp/container/map/find – juanchopanza