当我使用模板函数谓词时,为什么这不起作用.
class A
{
int x;
public:
A(int X):x(X){}
int getX() const {return x;}
};
template <typename T>
bool less_than_two(T const &a)
{
return (a.getX()<2);
}
int main()
{
list <A> l;
for (int i = 0; i < 5; i++)
l.push_back(i);
l.remove_if(less_than_two);
}
Run Code Online (Sandbox Code Playgroud) c++ ×1