bitset
- utilisé pour stocker des bits. Usage général - stocker les valeurs de certains drapeaux. Vous n'avez pas besoin de plus d'un bit pour cela.
deque
- double file d'attente - méthodes push_back, push_front, pop_back et pop_front - classe de base. Conteneur "non trié" (non ordonné).
list
- liste chaînée. Ce conteneur n'est pas continu en mémoire. Son heure d'ajout et de suppression d'éléments est O (1), mais la recherche d'un élément spécifique est O (n). Conteneur non ordonné
map
- conteneur, stocke les paires (std :: paire). Le premier est la clé - chaque élément de la carte doit être avec une clé unique. La carte est représentée comme arborescence, donc la recherche d'un élément dans la carte est n * log (n). Ce conteneur est toujours trié, c'est pourquoi l'ajout et la suppression d'éléments peuvent causer plus de temps - l'arbre (la structure de données) est binaire et équilibré.
multimap
- presque la même chose que std :: map, mais autorise les paires avec les mêmes clés. Par exemple, un multimap pourrait contenir des éléments: (666, "alabala"), (666, "asdfg"), alors que le standard std :: map ne le peut pas. Ce conteneur est également trié.
multiset
- de nouveau - identique à l'ensemble, mais avec des éléments répétables. set - bien, c'est aussi toujours un conteneur STL trié. Par exemple, un ensemble est {1, 2, 3} et lorsque vous essayez d'ajouter '1' dans cet ensemble, il ne sera pas ajouté, car il existe déjà un tel élément. (c'est analogique à l'ensemble du mathématique). Ainsi, multiset permet plusieurs éléments avec la même valeur, par exemple {1, 1, 1, 2, 3, 4, 4, 4, 4} est un multiset correct, alors qu'il est pas un ensemble. Ajouter et supprimer un élément dans std :: set est toujours un temps logarithmique, car il est représenté comme un arbre binaire, trié et équilibré.
priority_queue
- son premier élément est toujours le plus grand des éléments qu'il contient, selon certaines conditions strictes d'ordre faible. Fonctionnalités de base - push_back et pop_back.
queue
- Structure FIFO - Premier entré, premier sorti. (ou le même que LILO - Last In - Last Out). C'est analogique à une file d'attente standard - quand vous allez dans un magasin et commencez à attendre dans la file d'attente, le premier sera le premier à partir. Vous pouvez simplement appuyer sur push_back et pop_front. Conteneur non ordonné
set
- Je l'ai déjà décrit dans la section multiset.
stack
- LIFO - dernier entré - premier sorti - pile. Fonctionnalités de base - push_back, pop_back. Conteneur non ordonné
vector
- analogue à un tableau C++ standard. Il est traité comme un tableau régulier, il est continu en mémoire, il pourrait être passé à un programme C (passant l'adresse du premier élément). Conteneur non ordonné
REMARQUE IMPORTANTE: J'ai décrit la fonctionnalité de base, pas la totalité. Lisez CPlusPlus.com pour plus d'informations.
Ceci est une copie de [Dans quel scénario puis-je utiliser un conteneur STL particulier?] (Https://stackoverflow.com/questions/471432/in-which-scenario-do-i-use-a-particular- stl-container) - les réponses acceptées dans les deux utilisent exactement la même image, et celle-là était plus tôt, et _and_ a plus de réponses, donc ... Il ne semble pas nécessaire d'en avoir 2. –