Удаление элементов
Удаление элементов контейнера с указанным значением выполняется алгоритмами remove () и remove_if:
Forwardlterator
remove(Forwardlterator first, Forwardlterator last,
const T& value) ;
Forwardlterator
remove if(Forwardlterator first, Forwardlterator last,
Predicate pred) ;
Необходимо заметить, что эти алгоритмы не уменьшают числа элементов в контейнере. Они только сдвигают элементы, которые должны остаться в новом наборе, к его началу, и возвращают итератор конца нового набора элементов. Чтобы действительно удалить ненужные элементы, нужно применить метод контейнера erase ():
array.erase(remove(array.first(), array.end(), value),
array.end());
Алгоритм unique () удаляет из контейнера все элементы с повторяющимися значениями, следующие друг за другом, оставляя только первый из них:
Forwardlterator remove(Forwardlterator first, Forwardlterator last);
Алгоритм возвращает итератор конца нового набора элементов.