standard template library
Un aperçu complet de la bibliothèque de modèles standard (STL):
La bibliothèque de modèles standard (STL) de C ++ est une collection de classes de modèles qui fournissent des structures de données telles que des tableaux, des vecteurs, des files d'attente, etc. STL est une bibliothèque composée de conteneurs, d'algorithmes et d'itérateurs.
Étant donné que STL se compose d'un ensemble de classes de modèles, il s'agit d'une bibliothèque généralisée indépendante des types de données.
=> Lisez la série complète de didacticiels de formation C ++ ici.
Ce que vous apprendrez:
nouveau serveur privé world of warcraft
Composants de STL
STL se compose principalement des composants suivants qui sont mentionnés ci-dessous:
# 1) Conteneurs
Un conteneur est une collection d'objets d'un type particulier de structure de données. En STL, nous avons différents types de classes de conteneurs comme Array, vector, queue, deque, list, map, set, etc. Ces conteneurs sont de nature générique et sont implémentés comme des modèles de classes.
Les conteneurs sont de nature dynamique et peuvent être utilisés pour contenir divers types d'objets.
# 2) Algorithmes
Les algorithmes sont les méthodes ou fonctions qui agissent sur les conteneurs. En utilisant les algorithmes fournis par STL, nous pouvons avoir des méthodes pour rechercher, trier, modifier, transformer ou initialiser le contenu des objets de classe conteneur.
Les algorithmes fournis par STL ont des fonctions intégrées qui peuvent opérer directement sur une structure de données complexe au lieu d'avoir à écrire les algorithmes nous-mêmes.
Par exemple, La fonction reverse () dans STL peut être utilisée pour inverser la liste chaînée.
# 3) Itérateurs
Les itérateurs sont la caractéristique très importante et distinctive de STL. Les itérateurs sont les constructions utilisées pour traverser les objets conteneurs. Semblables aux index que nous utilisons pour parcourir les tableaux, les itérateurs agissent sur les objets de classe conteneur et peuvent être utilisés pour parcourir les données.
Conteneurs
Les conteneurs stockent des objets et des données. Ce sont essentiellement des classes génériques basées sur des modèles.
Les conteneurs dans STL sont divisés selon les types suivants:
# 1) Conteneurs séquentiels
On dit que les conteneurs auxquels on peut accéder de manière séquentielle ou linéaire sont des conteneurs séquentiels.
Exemple d'arbre de recherche binaire C ++
Arrays, Vectors, Lists, Deques sont les conteneurs STL qui stockent les données de manière linéaire et sont accessibles de manière séquentielle.
# 2) Conteneurs associatifs
Les conteneurs associatifs sont des conteneurs qui implémentent des structures de données triées. Ces conteneurs sont rapides à rechercher. Certains Exemples des conteneurs associatifs sont Map, Set, MultiMap, Multiset, etc. Ces conteneurs sont généralement implémentés sous la forme d'une paire clé / valeur.
# 3) Adopteurs de conteneurs
Les adoptants de conteneurs sont des conteneurs séquentiels, mais ils sont mis en œuvre en fournissant une interface différente. Ainsi, les conteneurs comme une file d'attente, un deque, une pile et une file d'attente prioritaire sont tous classés comme adoptants de conteneur.
Itérateurs
Les itérateurs sont des constructions que nous utilisons pour traverser ou parcourir des conteneurs dans STL. Les itérateurs sont très importants dans STL car ils agissent comme un pont entre les algorithmes et les conteneurs. Les itérateurs pointent toujours vers des conteneurs et en fait, des algorithmes fonctionnent sur des itérateurs et jamais directement sur des conteneurs.
Les itérateurs sont des types suivants:
- Itérateurs d'entrée: Le plus simple et est principalement utilisé dans les algorithmes à un seul passage.
- Itérateurs de sortie: Identique aux itérateurs d'entrée mais non utilisé pour le déplacement.
- Itérateurs bidirectionnels: Ces itérateurs peuvent se déplacer dans les deux sens.
- Itérateurs avant: Peut être utilisé uniquement dans le sens avant, un pas à la fois.
- Itérateurs à accès aléatoire: Identique aux pointeurs. Peut être utilisé pour accéder à n'importe quel élément de manière aléatoire.
Algorithmes
Les algorithmes sont un ensemble de fonctions ou de méthodes fournies par STL qui agissent sur les conteneurs. Ce sont des fonctions intégrées et peuvent être utilisées directement avec les conteneurs et itérateurs STL au lieu d'écrire nos propres algorithmes.
STL prend en charge les types d'algorithmes suivants:
- Recherche d'algorithmes
- Algorithmes de tri
- Modifier ou manipuler des algorithmes
- Algorithmes non modificateurs
- Algorithmes numériques
- Algorithmes Min / Max
Comme chacun des types d'algorithme le suggère, ces algorithmes peuvent être utilisés pour obtenir différentes fonctionnalités dans les conteneurs STL comme la recherche, le tri, la transformation des données dans les conteneurs, la recherche de la valeur min / max, etc.
Conclusion
Ceci est la brève introduction de la bibliothèque de modèles standard. Dans nos prochains didacticiels, nous en apprendrons davantage sur chacun des conteneurs, algorithmes et itérateurs.
=> Consultez la série complète de formations GRATUITES C ++ ici.
lecture recommandée
- Plugin Blazemeter et modèle Jmeter
- File d'attente prioritaire dans STL
- Tableaux dans STL
- Fonctions de bibliothèque en C ++
- Itérateurs dans STL
- JMeter Video 1: Introduction, téléchargement et installation de JMeter
- Piles et files d'attente dans STL
- Exemple de modèle de plan de test logiciel avec format et contenu