所以我尝试比较我从它得到的迭代器值 - >第二个用int来从值的基础上从map获取键.我有这个代码:
std::map<string, std::vector<int> >::const_iterator it;
void getStudentByGrade(int gradeComp)
{
for (it = studMap.begin(); it != studMap.end(); it++)
{
if (it->second == gradeComp)
{
cout << it->first;
}
}
}
Run Code Online (Sandbox Code Playgroud)
并在if语句中我得到错误,但我比较两个整数不是吗?作为gradeComp传递的int和it-> second.
错误是:
严重级代码描述项目文件行抑制状态错误C2678二进制'==':找不到运算符,它接受类型为'const std :: vector>'的左操作数(或者没有可接受的转换)
如何解决错误?我找到了仅使用迭代器获取key值的示例.
c++ ×1