unordered_multiset функция erase () в C ++ STL
Опубликовано: 30 Декабря, 2021
Функция unordered_multiset :: erase () - это встроенная функция в C ++ STL, которая используется для удаления либо одного элемента, либо всех элементов с определенным значением, либо диапазона элементов от начала (включительно) до конца (исключая ). Это уменьшает размер контейнера на количество удаленных элементов.
Синтаксис :
- unordered_multiset_name.erase(iterator position)
- unordered_multiset_name.erase(iterator start, iterator end)
- unordered_multiset_name.erase(key_value)
Параметры : Эта функция имеет три версии.
- Первый принимает итератор в качестве аргумента, стирает элемент, присутствующий в этой позиции.
- Вторая версия принимает два итератора (скажем, начало и конец), принимает 2 итератора в качестве аргумента и стирает все элементы в диапазоне [начало, конец).
- Третья версия принимает значение ключа в качестве аргумента и стирает все элементы этого значения в мультимножестве.
Возвращаемое значение : 1-я и 2-я версии функции, как показано в приведенном выше синтаксисе, возвращают итератор, следующий сразу за последним удаленным элементом. Третья версия возвращает количество стертых элементов.
Ниже приведены программы, иллюстрирующие функцию unordered_multiset :: erase ():
Программа 1 :
Программа 2 :
// C++ program to illustrate the // unordered_multiset::erase() function #include <iostream> #include <unordered_set> using namespace std; int main() { unordered_multiset< int > samplemultiSet; // Inserting elements samplemultiSet.insert(10); samplemultiSet.insert(5); samplemultiSet.insert(15); samplemultiSet.insert(20); samplemultiSet.insert(25); samplemultiSet.insert(10); samplemultiSet.insert(15); samplemultiSet.insert(20); // Erases all elements of value 10 samplemultiSet.erase(10); // Displaying the set after removal for ( auto it = samplemultiSet.begin(); it != samplemultiSet.end(); it++) { cout << *it << " " ; } return 0; } |
Выход:
5 15 15 20 20 25
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .