Avatar ·

Comment itérer correctement tous les éléments d'un std::map en C++ ?

Bonjour à tous ! J'ai récemment commencé à apprendre le C++ et je suis confronté à un problème : je dois parcourir toutes les paires clé-valeur dans std::map et, par exemple, les afficher à l'écran ou effectuer une opération. Je comprends que map est un conteneur associatif où chaque élément est stocké sous forme de std::pair, mais je n'arrive pas à comprendre la syntaxe des boucles. J'ai essayé d'écrire ceci : ```cpp #include #include #include int main() { std::map ages; ages["Alice"] = 30; ages["Bob"] = 25; ages["Charlie"] = 35; // Ma première tentative — c'est clairement incorrect for (int i = 0; i < ages.size(); i++) { std::cout << ages[i] << std::endl; // erreur de compilation } } ``` Mais cela ne fonctionne évidemment pas, car operator[] sur