std :: remove_if mit einer anderen Klassenmethode
Ich möchte benutzenstd::remove_if
mit einem Prädikat, das eine Mitgliedsfunktion eines differenct calss ist.
Das ist
class B;
class A {
bool invalidB( const B& b ) const; // use members of class A to verify that B is invalid
void someMethod() ;
};
Jetzt implementierenA::someMethod
, Ich habe
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 )
}
Gibt es eine Möglichkeit, dies zu tun?
Ich habe mich bereits mit der Lösung von befasstIdiomatisches C ++ für remove_if, aber es handelt sich um einen etwas anderen Fall, in dem das unäre Prädikat vonremove_if
ist ein Mitglied vonB
und nichtA
.
Außerdem,
Ich habe keinen Zugriff auf BOOST oder C ++ 11
Vielen Dank!