我想std::remove_if
与作为不同类的成员函数的谓词一起使用。
那是
class B;
class A {
bool invalidB( const B& b ) const; // use members of class A to verify that B is invalid
void someMethod() ;
};
现在,实施A::someMethod
,我有
void A::someMethod() {
std::vector< B > vectorB;
// filling it with elements
// I want to remove_if from vectorB based on predicate A::invalidB
std::remove_if( vectorB.begin(), vectorB.end(), invalidB )
}
有没有办法做到这一点?
我已经研究过
用于 remove_if 的惯用 C++的解决方案,但它处理的情况略有不同,即一元谓词 ofremove_if
是 ofB
而不是的成员A
。
此外,
我无权访问 BOOST 或 c++11
谢谢!