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

Метод insert

Метод insert класса unordered_map добавляет новые элементы в контейнер. В первый параметр мы передаем пару ключ-значение, во второй (необязательный) - подсказку позиции вставки, либо диапазон итераторов для вставки нескольких элементов. Если элемент с таким ключом уже существует, вставка не происходит.

Синтаксис

umap.insert(value) umap.insert(hint, value) umap.insert(first, last) umap.insert(initializer_list)

Пример

Давайте добавим один элемент в unordered_map:

#include <iostream> #include <unordered_map> using namespace std; int main() { unordered_map<int, string> umap; umap.insert({1, "abcde"}); umap.insert({2, "12345"}); for (auto el : umap) { cout << el.first << ": " << el.second << endl; } return 0; }

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

"2: 12345" "1: abcde"

Пример

Давайте попробуем вставить элемент с уже существующим ключом и проверим результат вставки:

#include <iostream> #include <unordered_map> using namespace std; int main() { unordered_map<int, string> umap; auto res1 = umap.insert({1, "abcde"}); auto res2 = umap.insert({1, "12345"}); cout << "First insert: " << res1.second << endl; cout << "Second insert: " << res2.second << endl; cout << "Value: " << umap[1] << endl; return 0; }

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

"First insert: 1" "Second insert: 0" "Value: abcde"

Пример

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

#include <iostream> #include <unordered_map> using namespace std; int main() { unordered_map<int, string> umap; umap.insert({ {1, "abcde"}, {2, "12345"}, {3, "qwerty"} }); for (auto el : umap) { cout << el.first << ": " << el.second << endl; } return 0; }

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

"3: qwerty" "2: 12345" "1: abcde"

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

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