Pour parcourir un conteneur STL, vous pouvez utiliser les fonctions start() et end() du conteneur pour obtenir la plage de l'itérateur : Vecteur : utilisez une boucle for pour parcourir la plage de l'itérateur. Liste chaînée : utilisez la fonction membre next() pour parcourir les éléments de la liste chaînée. Mappage : obtenez un itérateur de paires clé-valeur et utilisez une boucle for pour parcourir.
Comment parcourir un conteneur STL C++
Parcourir un conteneur STL (Standard Template Library) C++ est une tâche essentielle dans le travail quotidien des programmeurs. STL fournit une série de structures de données prédéfinies telles que des vecteurs, des listes chaînées et des cartes, chacune avec ses propres méthodes de parcours.
Pour parcourir un vecteur, nous pouvons utiliser les fonctions begin()
et end()
pour obtenir la plage de l'itérateur : begin()
和 end()
函数获得迭代器范围:
#include <vector> int main() { std::vector<int> v = {1, 2, 3, 4, 5}; // 使用基于范围的 for 循环 for (int num : v) { std::cout << num << " "; } std::cout << std::endl; // 使用迭代器 for (std::vector<int>::iterator it = v.begin(); it != v.end(); ++it) { std::cout << *it << " "; } std::cout << std::endl; return 0; }
输出:
1 2 3 4 5 1 2 3 4 5
要遍历一个链表,我们可以使用链表的 front()
和 back()
函数以及该链表的 next()
成员函数:
#include <list> int main() { std::list<int> l = {1, 2, 3, 4, 5}; // 使用基于范围的 for 循环 for (int num : l) { std::cout << num << " "; } std::cout << std::endl; // 使用迭代器 std::list<int>::iterator it = l.begin(); while (it != l.end()) { std::cout << *it << " "; it = it->next(); } std::cout << std::endl; return 0; }
输出:
1 2 3 4 5 1 2 3 4 5
要遍历一个映射,我们可以使用映射的 begin()
和 end()
#include <map> int main() { std::map<std::string, int> m = {{"Apple", 1}, {"Banana", 2}, {"Cherry", 3}}; // 使用基于范围的 for 循环 for (auto const& [key, value] : m) { std::cout << key << ": " << value << std::endl; } std::cout << std::endl; // 使用迭代器 for (std::map<std::string, int>::iterator it = m.begin(); it != m.end(); ++it) { std::cout << it->first << ": " << it->second << std::endl; } return 0; }
Sortie :
Apple: 1 Banana: 2 Cherry: 3 Apple: 1 Banana: 2 Cherry: 3
front()
et back()
de la liste chaînée et les next() Fonction membre : 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee🎜Traverser les mappages STL🎜🎜Pour parcourir un mappage, nous pouvons utiliser le begin()
du mappage > et end() code> La fonction obtient l'itérateur des paires clé-valeur : 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!