Traduzioni di questa pagina?:

C++ Standard Template Library

La Standard Template Library (STL) del C++ è una collezione di classi template e di algoritmi che permettono al programmatore di implementare facilmente strutture dati standard come code, liste e pile

Strutture Dati

La STL implementa i seguenti costrutti (raggruppati in tre categorie):

L'idea che sta alla base della STL del C++ è che il gran parte del lavoro necessario ad usare strutture dati complesse deve essere implementato nella libreria di template. Se un programmatore vuole creare uno stack di interi tutto quello che deve fare è usare questa linea di codice:

  stack<int> myStack;

Con sforzo minimo uno può aggiungere allo stack altri interi con i comandi push e pop. Tuttavia le classi template permettono di creare stack con ogni tipo dati, non solo dati elementari come gli interi. Lo Stack di STL ha le funzionalità generali di uno stack indipendentemente dal tipo di dati contenuto in esso.

Algoritmi

La STL del C++ contiene anche una serie di utili algoritmi come binary_search, sort, and for_each. Gli algoritmi possono venire usati su contenitori o strutture dati.

Iteratori

Gli iteratori implementano metodi generali di iterazione sulle strutture dati della STL.

Function Objects

L'header <functional> definisce metodi collegati alla creazione di oggetti funzione.

Memoria

L'header <memory> contiene dichiarazioni relative a strutture e metodi di gestione della memoria come auto_ptr.

Utility

Infine ci sono molti metodi di utilità generale come make_pair dichiarati nell'header <utility>.