Справочники C++ multimap

Что такое multimap в C++?

std::multimap в языке программирования C++ представляет собой ассоциативный контейнер, аналогичный std::map, но разрешающий наличие нескольких элементов с одинаковым ключом. Этот контейнер входит в Standard Template Library (STL) и предоставляет эффективный способ работы с ассоциативными данными, где ключ может быть связан с несколькими значениями.

#include <iostream>
#include <multimap>

int main() {
    // Создание ассоциативного массива (multimap) строк
    std::multimap<int, std::string> students;

    // Добавление элементов в multimap
    students.insert({101, "Alice"});
    students.insert({102, "Bob"});
    students.insert({103, "Alice"}); // Допустимо иметь несколько студентов с одним ID

    // Поиск всех студентов с ID 101
    int studentID = 101;
    auto range = students.equal_range(studentID);
    std::cout << "Students with ID " << studentID << ": ";
    for (auto it = range.first; it != range.second; ++it) {
        std::cout << it->second << " ";
    }
    std::cout << std::endl;

    // Итерация по элементам multimap
    std::cout << "All students: ";
    for (const auto& student : students) {
        std::cout << "(" << student.first << ": " << student.second << ") ";
    }
    std::cout << std::endl;

    return 0;
}

Основные операции с std::multimap:

  1. Добавление элементов: Элементы добавляются в std::multimap с использованием метода std::multimap::insert().
  2. Поиск элементов: Поиск элементов выполняется с использованием метода std::multimap::equal_range().
  3. Удаление элементов: Метод std::multimap::erase() используется для удаления элементов по ключу.
  4. Итерация по multimap: Итерация может быть выполнена с использованием цикла for или итераторов.
Комментарии
Добавить комментарий

Пока комментариев нет