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

Метод erase

Метод erase удаляет элементы из контейнера map. Он имеет три перегруженные версии. Первая версия принимает ключ и удаляет элемент с этим ключом, возвращая количество удаленных элементов. Вторая версия принимает итератор и удаляет элемент, на который он указывает, возвращая итератор на следующий элемент. Третья версия принимает два итератора и удаляет диапазон элементов [first, last).

Синтаксис

map.erase(key) map.erase(iterator) map.erase(first, last)

Пример

Давайте создадим map с несколькими элементами и удалим один из них по ключу:

#include <iostream> #include <map> using namespace std; int main() { map<int, string> mp = { {1, "abcde"}, {2, "12345"}, {3, "hello"} }; mp.erase(2); for (auto el : mp) { cout << el.first << " " << el.second << endl; } return 0; }

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

"1 abcde" "3 hello"

Пример

Давайте удалим элемент по итератору, полученному через метод find:

#include <iostream> #include <map> using namespace std; int main() { map<int, string> mp = { {1, "abcde"}, {2, "12345"}, {3, "hello"} }; auto it = mp.find(3); if (it != mp.end()) { mp.erase(it); } for (auto el : mp) { cout << el.first << " " << el.second << endl; } return 0; }

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

"1 abcde" 2 12345

Пример

Давайте удалим диапазон элементов с помощью двух итераторов:

#include <iostream> #include <map> using namespace std; int main() { map<int, string> mp = { {1, "abcde"}, {2, "12345"}, {3, "hello"}, {4, "world"} }; mp.erase(mp.find(2), mp.find(4)); for (auto el : mp) { cout << el.first << " " << el.second << endl; } return 0; }

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

"1 abcde" "4 world"

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

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