我之前在 C++ 中将 find_if 与列表和向量一起使用过,它运行良好。但是现在,当我尝试将它与集合一起使用时,我收到以下错误:
error: no matching function for call to ‘find_if(std::set<A, Acmp>::iterator,
std::set<A, Acmp>::iterator, <unresolved overloaded function type>)’|
我的班级如下:
bool searchForA(A i) {
return (i.getVal() > 0);
}
void B::findA()
{
set<A, Acmp> cont;
set<A, Acmp>::iterator it;
A *a1 = new A(5);
A *a2 = new A(7);
cont.insert(*a1);
cont.insert(*a2);
it = find_if (cont.begin(), cont.end(), search)
}
谁能帮我理解问题出在哪里?