У цьому короткому посібнику ми побачимо, як здійснити ітерацію на карті в C++.
Існує кілька способів перегляду карти в C++. У новіших версіях C ++ існують більш просунуті способи перегляду карти в C++.
Давайте пройдемося по кожному.
Використання циклу for зі stp :: map
Ми створили карту з назвою countryCapitalMap
і вставив в неї пари ключ-значення.
#включати
#включати
Вихід:
Китай: Пекін
Франція: Париж
Індія: Делі
Непал: Катманду
Як бачите, ми надрукували country: capital (ключ: значення), використовуючи для циклу for.
Якщо ви помітили, ми використали авто
специфікатор типу для ітератора карти через читабельність. Можна використовувати карта:: ітератор
явно також.
Примітка: Якщо ви бачите результат, він сортується за клавішами у порядку зростання. Це тому, що std :: map - це відсортований асоціативний контейнер із поставленим компаратором (версія C ++ 11 і далі). Оскільки ми не надали жодного порівняльника, тому C ++ використовував порівняльник за замовчуванням для рядка.
Використання циклу while зі stp :: map
Ми також можемо використовувати цикл while замість циклу for.
#включати
#включати
Вихід:
Китай: Пекін
Франція: Париж
Індія: Делі
Непал: Катманду
Використання діапазону на основі циклу (версія C ++ 11 і далі)
Якщо ви використовуєте версію C ++ 11, то це найелегантніший спосіб ітерації по карті в C++. Ви можете уникнути традиційних кубічних петель і використовувати їх замість цього.
#включати
#включати
Вихід:
Китай: Пекін
Франція: Париж
Індія: Делі
Непал: Катманду
Використання циклу на основі діапазону з парами ключ-значення (версія C ++ 17 і далі)
Ця версія підтримується від c ++ 17 і надає більш гнучкий спосіб ітерації по карті. Ви можете явно отримати доступ до пари ключ-значення на карті, що забезпечує ще більш читабельне рішення.
#включати
#включати
Вихід:
Китай: Пекін
Франція: Париж
Індія: Делі
Непал: Катманду
Це все про те, як переглядати карту в C++. Щасливого кодування!