Neste tutorial rápido, veremos como iterar no mapa em C++.
Existem várias maneiras de iterar sobre o mapa em C++. Com as versões mais recentes de C ++, existem maneiras mais avançadas de iterar no mapa em C++.
Vamos examinar um por um.
Usando o loop for com stp :: map
Criamos um mapa chamado countryCapitalMap
e inseriu pares de valores-chave nele.
#incluir
#incluir
Resultado:
China: Pequim
França: Paris
Índia: Delhi
Nepal: Kathmandu
Como você pode ver, imprimimos country: capital (chave: valor) usando o loop for.
Se você notar, nós usamos auto
especificador de tipo para o iterador do mapa devido à legibilidade. Você pode usar mapa:: iterator
explicitamente também.
Observação: Se você vir a saída, ela é classificada por chaves em ordem crescente. Isso ocorre porque std :: map é um contêiner associativo classificado com o Comparador fornecido (versão C ++ 11 em diante). Como não fornecemos nenhum comparador, C ++ usou o Comparador padrão para string.
Usando loop while com stp :: map
Também podemos usar um loop while em vez de um loop for.
#incluir
#incluir
Resultado:
China: Pequim
França: Paris
Índia: Delhi
Nepal: Kathmandu
Usando intervalo baseado em loop (versão C ++ 11 em diante)
Se você estiver usando a versão C ++ 11, esta é a maneira mais elegante de iterar sobre o mapa em C++. Você pode evitar loops cubersome tradicionais e usar isso.
#incluir
#incluir
Resultado:
China: Pequim
França: Paris
Índia: Delhi
Nepal: Kathmandu
Uso de loop for baseado em intervalo com pares de valores-chave (versão C ++ 17 em diante)
Esta versão é compatível com c ++ 17 em diante e fornece uma maneira mais flexível de iterar no mapa. Você pode acessar explicitamente o par de valores-chave no mapa, o que fornece uma solução ainda mais legível.
#incluir
#incluir
Resultado:
China: Pequim
França: Paris
Índia: Delhi
Nepal: Kathmandu
Isso é tudo sobre como iterar sobre o mapa em C++. Boa codificação!