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

Метод erase класса set

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

Синтаксис

set.erase(iterator pos) set.erase(iterator first, iterator last) set.erase(const key_type& key)

Пример

Давайте создадим множество с элементами 1, 2, 3, 4, 5 и удалим элемент по ключу 3:

#include <iostream> #include <set> using namespace std; int main() { set<int> st = {1, 2, 3, 4, 5}; st.erase(3); for (int elem : st) { cout << elem << " "; } cout << endl; return 0; }

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

1 2 4 5

Пример

Давайте удалим элемент по итератору. Сначала найдем элемент со значением 3 с помощью метода find, а затем передадим его в метод erase:

#include <iostream> #include <set> using namespace std; int main() { set<int> st = {1, 2, 3, 4, 5}; auto it = st.find(3); st.erase(it); for (int elem : st) { cout << elem << " "; } cout << endl; return 0; }

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

1 2 4 5

Пример

Давайте удалим диапазон элементов от 2 до 4 (не включая 4) с помощью итераторов:

#include <iostream> #include <set> using namespace std; int main() { set<int> st = {1, 2, 3, 4, 5}; auto first = st.find(2); auto last = st.find(4); st.erase(first, last); for (int elem : st) { cout << elem << " "; } cout << endl; return 0; }

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

1 4 5

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

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