V tomto rýchlom návode uvidíme, ako iterovať na mape v jazyku C++.
Existuje niekoľko spôsobov, ako iterovať po mape v jazyku C++. S novšími verziami C ++ existujú pokročilejšie spôsoby iterácie po mape v jazyku C++.
Prejdime si každý jeden po druhom.
Použitie cyklu for s stp :: map
Vytvorili sme mapu s názvom countryCapitalMap
a vložili do nej páry kľúč - hodnota.
#include
#include
Výkon:
Čína: Peking
Francúzsko: Paríž
India: Dillí
Nepál: Káthmandu
Ako vidíte, pomocou cyklu for sme vytlačili country: capital (key: value).
Ak si všimnete, použili sme auto
špecifikátor typu pre iterátor máp z dôvodu čitateľnosti. Môžeš použiť mapa:: iterátor
vyslovene tiež.
Poznámka: Ak vidíte výstup, je zoradený podľa klávesov vzostupne. Je to tak preto, lebo std :: map je triedený asociatívny kontajner s dodaným komparátorom (verzia C ++ 11 a novšia). Pretože sme neposkytli žiadny komparátor, tak C ++ použil pre reťazec predvolený komparátor.
Použitie while cyklu s stp :: map
Môžeme tiež použiť cyklus while namiesto cyklu for.
#include
#include
Výkon:
Čína: Peking
Francúzsko: Paríž
India: Dillí
Nepál: Káthmandu
Používanie rozsahu založeného na cykle (od verzie C ++ 11)
Ak používate verziu C ++ 11, je to najelegantnejší spôsob iterácie po mape v jazyku C++. Môžete sa vyhnúť tradičným kockovitým slučkám a použiť ich namiesto toho.
#include
#include
Výkon:
Čína: Peking
Francúzsko: Paríž
India: Dillí
Nepál: Káthmandu
Použitie rozsahu založeného na cykle s pármi kľúč - hodnota (od verzie C ++ 17)
Táto verzia je podporovaná od c ++ 17 a ďalej a poskytuje flexibilnejší spôsob iterácie po mape. Na mape máte explicitný prístup k páru kľúč - hodnota, čo poskytuje ešte čitateľnejšie riešenie.
#include
#include
Výkon:
Čína: Peking
Francúzsko: Paríž
India: Dillí
Nepál: Káthmandu
To je všetko o tom, ako iterovať po mape v C++. Šťastné programovanie!