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

Оператор []

Оператор [] в классе unordered_map возвращает ссылку на значение, ассоциированное с указанным ключом. В качестве параметра оператор принимает ключ, по которому нужно получить доступ к элементу. Если элемент с таким ключом отсутствует в контейнере, он создается со значением по умолчанию для типа данных (например, 0 для чисел или пустая строка для string), а затем возвращается ссылка на него.

Этот оператор удобен для быстрого доступа к элементам, но требует осторожности: обращение к несуществующему ключу изменяет размер контейнера.

Синтаксис

map[key]

Пример

Давайте создадим unordered_map и получим значение по существующему ключу:

#include <iostream> #include <unordered_map> #include <string> using namespace std; int main() { unordered_map<string, int> umap = {{"a", 1}, {"b", 2}}; cout << umap["a"] << endl; return 0; }

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

1

Пример

Если ключа нет в контейнере, оператор создает его. Давайте проверим это:

#include <iostream> #include <unordered_map> #include <string> using namespace std; int main() { unordered_map<string, int> umap = {{"a", 1}, {"b", 2}}; cout << umap["c"] << endl; cout << umap.size() << endl; return 0; }

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

0 3

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

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