vector<myClass> v; int intvar = 15; remove_if ( v.begin(), v.end(), bind2nd ( equal_to<int>(), intvar ) ) где тут можно написать что it->getId() ? или только перегружать оператор сравнения == для myClass и int ? PS: intvar не глобальная поэтому пихать на это место функцию нельзя