std::map::operator[] — cppreference.com
Материал из cppreference.com
<metanoindex/>
<tbody> </tbody>
|
|
(1) | |
|
|
(2) | (начиная с C++11) |
Вставляет новый элемент в контейнере с помощью key в качестве ключа и конструктором по умолчанию отображенные значения и возвращает ссылку на вновь построенные отображаются значения. Если элемент с ключом key уже существует, вставка не выполняется, и ссылка на ее значение отображается возвращается.
Оригинал:
Inserts a new element to the container using key as the key and default constructed mapped value and returns a reference to the newly constructed mapped value. If an element with key key already exists, no insertion is performed and a reference to its mapped value is returned.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
1)
По сути выполняет (insert(std::make_pair(key, T())).first)->second.
Оригинал:
Essentially performs (insert(std::make_pair(key, T())).first)->second.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
2)
По сути выполняет (insert(std::make_pair(std::move(key), T())).first)->second.
Оригинал:
Essentially performs (insert(std::make_pair(std::move(key), T())).first)->second.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Итераторы и указатели остаются в рабочем состоянии.
Параметры
| key | — | Ключ элемента найти Оригинал: the key of the element to find Текст был переведён автоматически используя Переводчик Google. |
Возвращаемое значение
Ссылка на отображенное значение нового элемента, если нет элемента с ключом key существовало. В противном случае ссылка на отображенное значение существующего элемента возвращается.
Оригинал:
Reference to the mapped value of the new element if no element with key key existed. Otherwise a reference to the mapped value of the existing element is returned.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Сложность
Logarithmic in the size of the container.
Пример
См. также
| предоставляет доступ к указанному элементу с проверкой границ (public функция-элемент) [править] |
Пример
#include <iostream> #include <map> int main() { std::map<std::string, int> m; for (auto i{0}; i != 10; ++i) { m["пёс"]++; } for (auto i{0}; i != 5; ++i) { m["кот"]++; } std::cout << "Число псов: " << m["пёс"] << ", число котов: " << m["кот"] << '\n'; }
Вывод:
Число псов: 10, число котов: 5