GeeksforGeeks
Il Ottobre 28, 2021 da adminLa Standard Template Library (STL) è un insieme di classi template C++ per fornire strutture dati e funzioni comuni di programmazione come liste, pile, array, ecc. È una libreria di classi contenitore, algoritmi e iteratori. È una libreria generalizzata e quindi i suoi componenti sono parametrizzati. Una conoscenza pratica delle classi template è un prerequisito per lavorare con STL.
STL ha quattro componenti
- Algoritmi
- Contenitori
- Funzioni
- Iteratori
Algoritmi
L’algoritmo di testa definisce una collezione di funzioni appositamente progettate per essere utilizzate su intervalli di elementi.Esse agiscono sui contenitori e forniscono mezzi per varie operazioni per i contenuti dei contenitori.
- Algoritmo
- Ordinamento
- Ricerca
- Algoritmi STL importanti
- Algoritmi per matrici utili
- Operazioni di partizione
- Classe numerica
- valarray
Contenitori
I contenitori o classi contenitore memorizzano oggetti e dati. Ci sono in totale sette classi contenitore standard “di prima classe” e tre classi di adattatori di contenitori e solo sette file header che forniscono l’accesso a questi contenitori o adattatori di contenitori.
- Contenitori di sequenze: implementano strutture di dati a cui si può accedere in modo sequenziale.
- vector
- list
- deque
- arrays
- forward_list( Introdotto in C++11)
- Container Adaptors : forniscono una diversa interfaccia per i contenitori sequenziali.
- queue
- priority_queue
- stack
- Contenitori associativi: implementano strutture di dati ordinati che possono essere cercati rapidamente (complessità O(log n)).
- set
- multiset
- map
- multimap
- Contenitori associativi non ordinati : implementa strutture dati non ordinate che possono essere cercate rapidamente
- unordered_set (Introdotto in C++11)
- unordered_multiset (Introdotto in C++11)
- unordered_map (Introdotto in C++11)
- unordered_multimap (Introdotto in C++11)
- Funtori
- Iteratori
- pair
Diagramma di flusso dei contenitori adattivi e dei contenitori non ordinati
Diagramma di flusso dei contenitori di sequenza e dei contenitori ordinati
Funzioni
L’STL include classi che sovraccaricano l’operatore di chiamata funzione. Le istanze di tali classi sono chiamate oggetti funzione o funtori. I funtori permettono di personalizzare il funzionamento della funzione associata con l’aiuto di parametri da passare.
Iteratori
Come suggerisce il nome, gli iteratori sono usati per lavorare su una sequenza di valori. Sono la caratteristica principale che permette la generalità in STL.
Utility Library
Definita nell’intestazione <utility>.
Lascia un commento