这个问题已经在这里有一个答案:
我试图找到,如果一个对象的属性是向量。例如,如果我有汽车对象的矢量和Car对象具有的许可证,方向和时间属性。我想,如果找方向“N”是Car对象的载体。而如果属性是汽车的矢量返回true或false。
这是我迄今为止的功能,但我想使用STL find()方法来搜索的属性:
bool isIn(std::vector<Car *> c, std::string check){
for (auto i = 0; i < c.size(); i++)
{
if (c[i]->dir == check)
{
return true;
}
}
return false;
}
了在传递的参数是汽车和方向的矢量。
在您的情况std::find_if可能是解决
auto it = find_if(c.begin(), c.end(), [&check](const Car& obj) {return obj.getDir() == check;})