РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
401 of 815 menu

Функция remove

Функция remove удаляет из диапазона все элементы, равные заданному значению. Функция принимает три параметра: итератор на начало диапазона, итератор на конец диапазона и значение, которое нужно удалить. Функция возвращает итератор на новый конец диапазона после удаления. Важно понимать, что remove не изменяет размер контейнера, а лишь переставляет элементы так, чтобы удаляемые значения оказались в конце диапазона.

Синтаксис

remove(first, last, value)

Пример

Давайте удалим все числа 3 из вектора и выведем элементы, оставшиеся в начале диапазона:

#include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> v = {1, 2, 3, 4, 5, 3, 2, 1}; auto it = remove(v.begin(), v.end(), 3); for (auto i = v.begin(); i != it; ++i) { cout << *i << " "; } cout << endl; return 0; }

Результат выполнения кода:

1 2 4 5 2 1

Пример

Давайте удалим все символы 'b' из строки и выведем результат:

#include <iostream> #include <string> #include <algorithm> using namespace std; int main() { string str = "abcde"; auto it = remove(str.begin(), str.end(), 'b'); str.erase(it, str.end()); cout << str << endl; return 0; }

Результат выполнения кода:

"acde"

Пример

Давайте удалим все элементы, равные "c", из вектора строк и выведем оставшиеся элементы:

#include <iostream> #include <vector> #include <string> #include <algorithm> using namespace std; int main() { vector<string> v = {"a", "b", "c", "d", "e"}; auto it = remove(v.begin(), v.end(), "c"); for (auto i = v.begin(); i != it; ++i) { cout << *i << " "; } cout << endl; return 0; }

Результат выполнения кода:

"a" "b" "d" "e"

Смотрите также

  • функция remove_if,
    которая удаляет элементы по условию
  • функция unique,
    которая удаляет последовательные дубликаты
  • функция replace,
    которая заменяет элементы на новое значение
  • функция find,
    которая ищет элемент в диапазоне
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить