<分区>
我正在尝试在我的 map 中打印输入
map<string, Ort*> Hashtable;
键是一个字符串(来自城市的邮政编码) Objekt Ort* 包含名称(字符串)和 x,y 坐标( double )。
我尝试打印 map :
for (it = Hashtable.begin(); it != Hashtable.end(); it++) {
cout << it->first << " " << it->second->GetOrtsname()
<< " (" << it->second->GetPosX() << " " << it->second->GetPosY() << ")" << endl;
}
错误输出:
error: no match for ‘operator=’ (operand types are ‘std::map<std::basic_string<char>, Ort*>::iterator {aka std::_Rb_tree_iterator<std::pair<const std::basic_string<char>, Ort*> >}’ and ‘std::map<std::basic_string<char>, Ort*>::const_iterator {aka std::_Rb_tree_const_iterator<std::pair<const std::basic_string<char>, Ort*> >}’)
for (it = Hashtable.begin(); it != Hashtable.end(); it++) {
看来我真的看不懂错误输出 感谢 juanchopanza
解决方法:
map<string, Ort*>::const_iterator it;