bitset
- utilizzato per memorizzare bit. Uso generale: memorizza i valori di alcuni contrassegni. Non hai bisogno di più di 1 bit per quello.
deque
- coda a doppio attacco - push_back, push_front, pop_back e pop_front - metodi di classe base. Contenitore "non ordinato" (non ordinato).
list
- Elenco collegato. Questo contenitore non è continuo alla memoria. Il tempo per aggiungere ed eliminare elementi è O (1), ma cercare un elemento specifico è O (n). Contenitore non ordinato
map
- contenitore, memorizza le coppie (std :: coppia). Il primo è la chiave: ogni elemento della mappa deve essere associato a una chiave univoca. La mappa è rappresentata come albero, quindi la ricerca di un elemento nella mappa è n * log (n). Questo contenitore è sempre ordinato, ecco perché aggiungere e rimuovere elementi potrebbe causare più tempo: l'albero (la struttura dati) è binario ed equilibrato.
multimap
- quasi uguale a std :: map, ma consente coppie con le stesse chiavi. Ad esempio, un multimap potrebbe contenere elementi: (666, "alabala"), (666, "asdfg"), mentre lo standard std :: map non può. Questo contenitore è anche ordinato.
multiset
- di nuovo - uguale a quello impostato, ma con elementi ripetibili. set - beh, questo è sempre un contenitore STL ordinato. Ad esempio, un set è {1, 2, 3} e quando si tenta di aggiungere "1" a questo set, non verrà aggiunto, poiché già esiste un tale elemento. (è analogico al set della matematica). Quindi, il multiset consente diversi elementi con lo stesso valore, ad esempio {1, 1, 1, 2, 3, 4, 4, 4} è un multiset corretto, mentre è non un set. Aggiungere e rimuovere elementi in std :: set è ancora tempo logaritmico, poiché è rappresentato da un albero binario, ordinato e bilanciato.
priority_queue
- il suo primo elemento è sempre il più grande degli elementi in esso contenuti, secondo alcune rigorose condizioni di ordine deboli. Funzionalità di base: push_back e pop_back.
queue
- Struttura FIFO - First in, first out. (o lo stesso di LILO - Last In - Last Out). È analogo a una coda standard: quando vai in un negozio e inizi ad aspettare in coda, il primo sarà il primo ad andare. Puoi solo push_back e pop_front. Contenitore non ordinato
set
- L'ho già descritto nella sezione multiset.
stack
- LIFO - Last In - First Out - Stack. Funzionalità di base - push_back, pop_back. Contenitore non ordinato
vector
- analogico a un array C++ standard. Viene trattato come un array regolare, è continuo alla memoria e può essere passato a un programma C (passando l'indirizzo del primo elemento). Contenitore non ordinato
NOTA IMPORTANTE: Ho descritto la funzionalità di base, non quella completa. Leggi CPlusPlus.com per ulteriori informazioni.
Questo è un duplicato di [In quale scenario utilizzo un particolare contenitore STL?] (Https://stackoverflow.com/questions/471432/in-which-scenario-do-i-use-a-particular- stl-container) - le risposte accettate in entrambi usano la stessa identica immagine, e quella era precedente, _e_ ha più risposte, quindi ... Non sembra esserci alcuna necessità di avere 2. –