Судя по документации на multimap отсутствует доступ к элементам через оператор[] или at, в отличие от map. Есть ли какая замена для доступа к нужному элементу multimap?
Для std::map
функция operator[] имеет совершенно не тот смысл, что функция operator[], например, для std::vector
, std::deque
или встроенный оператор [] для работы с массивами.
Для std::map
operator[] это упрощение операции "обновления с возможным созданием".
Для объявления map<K, V> m
, операция m[k] = v
проверяет присутствует ли ключ k
в контейнере. Если ключ отсутствует, он добавляется вместе с ассоциированным значением v
. Если такой ключ уже есть, то ассоциированное с ним значение заменяется на v
.
Так как в std::multimap
могут содержаться повторяющиеся ключи, то непонятно на какой объект, ассоциированный с ключом, operator[] должен вернуть ссылку.
Подумайте, точно ли вам нужен именно этот контейнер.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Я написал класс Vector и перегрузил для него операторы = и +Код ниже почему-то приводит к аварийному завершению, хотя и выводит правильный результат
Возникла трудность при решении такой задачи: дан массив строк, в котором записаны имена и фамилии пользователейНужно вывести пользователей...
Программа находит в строке char последовательности одинаковых символов длинной более 3 символов(кроме пробела) и закидывает эти фрагменты...
Я использую примерТут выводятся положения точки на экране :