【发布时间】:2011-10-12 04:23:29
【问题描述】:
我正在尝试执行返回在向量中出现的位置的函数。但是我的返回值始终是 0 并且我确定有匹配项。
代码如下:
int findInItemvector(vector<Item> vec, string name)
{
for(vector<Item>::iterator it = vec.begin(); it < vec.end(); it++)
{
if(it->getName() == name)
{
return it - vec.begin();
break;
}
else
{
return 0;
}
}
}
【问题讨论】:
-
为什么不将
std::find_if与自定义谓词一起使用?
标签: c++ stl vector iterator find