Я использую стирающие удалить идиомы:erase-remove idiom: я просто что-то удалял?
template <typename T>
bool garbageCollectVector(std::vector<T>& v) {
// Use the erase-remove idiom in combination with a lambda expression
v.erase(
std::remove_if(v.begin(), v.end(),
[this](const T& elem) -> bool {
return this->shouldRemove(elem);
}
),
v.end());
return /* what to return? */;
}
и хочу вернуться, действительно ли способ удалить любой элемент или нет. Что такое самый чистый способ сделать это?
Проверьте размер вектора до и после? –