I denne raske opplæringen vil vi se hvordan du kan gjenta i kart i C++.
Det er flere måter å gjenta over kartet i C++. Med nyere versjoner av C ++ er det mer avanserte måter å gjenta over kartet i C++.
La oss gå gjennom hver og en.
Bruker for loop med stp :: map
Vi har laget et kart med navnet countryCapitalMap
og satt inn nøkkelverdipar til den.
#inkludere
#inkludere
Produksjon:
Kina: Beijing
Frankrike: Paris
India: Delhi
Nepal: Katmandu
Som du kan se, har vi skrevet land: hovedstad (nøkkel: verdi) ved hjelp av for loop.
Hvis du merker, har vi brukt auto
typespesifikator for kart iterator på grunn av lesbarhet. Du kan bruke kart:: iterator
eksplisitt også.
Merk: Hvis du ser utdataene, sorteres den etter nøkler i stigende rekkefølge. Dette er fordi std :: map er en sortert assosiativ beholder med medfølgende komparator (versjon C ++ 11 og utover). Siden vi ikke ga noen komparator, har C ++ brukt standardkomparatoren for streng.
Bruker mens sløyfe med stp :: kart
Vi kan også bruke en while-løkke i stedet for for loop.
#inkludere
#inkludere
Produksjon:
Kina: Beijing
Frankrike: Paris
India: Delhi
Nepal: Katmandu
Bruker Range based for loop (C ++ 11 versjon og utover)
Hvis du bruker C ++ 11-versjonen, er dette den mest elegante måten å gjenta over kart i C++. Du kan unngå tradisjonelle kubiske løkker og bruke dette i stedet.
#inkludere
#inkludere
Produksjon:
Kina: Beijing
Frankrike: Paris
India: Delhi
Nepal: Katmandu
Bruker rekkeviddebasert for loop med nøkkelverdipar (C ++ 17-versjonen og utover)
Denne versjonen støttes fra c ++ 17 og utover og gir en mer fleksibel måte for iterering over kartet. Du kan eksplisitt få tilgang til nøkkelverdipar i kartet som gir enda mer lesbar løsning.
#inkludere
#inkludere
Produksjon:
Kina: Beijing
Frankrike: Paris
India: Delhi
Nepal: Katmandu
Det handler om hvordan du kan gjenta over kartet i C++. Glad koding!