Standard Template Library

La Biblioteca de plantilles estàndard (STL) és una biblioteca de programari inclòs parcialment a la biblioteca estàndard de C++. Proporciona contenidors, iteradors, algorismes i funcions. Més concretament, la biblioteca es basa en la STL publicat per SGI. Ambdós inclouen algunes característiques que no es troba en l'altre. SGI STL és tan rígid com un conjunt de capçaleres, mentre que l'ISO C++ no s'especifica el contingut de capçalera, i permeti la seva aplicació tant en les capçaleres, o en una veritable biblioteca.

La STL proporciona un ready-made conjunt de classes comuns per C++, com ara contenidors i arrays associatius, que es pot utilitzar amb qualsevol tipus integrat i amb qualsevol tipus definit per l'usuari que suporta algunes operacions elementals (com copiar i assignació), els algorismes de STL són independents dels contenidors, la qual cosa redueix significativament la complexitat de la biblioteca.

El STL assoleix els seus resultats mitjançant l'ús de plantilles. Aquest enfocament proporciona en temps de compilació polimorfisme que sovint és més eficient que els tradicionals en temps d'execució polimorfisme. Modern C++ compiladors estan afinats per reduir al mínim qualsevol pena d'abstracció derivats d'un ús intensiu de la STL.

El STL es va crear la primera biblioteca d'algorismes i estructures de dades genèrics de C++, amb quatre idees al cap: la programació genèrica, abstracte, sense pèrdua d'eficiència, el model de Von Neumann de computació, i la semàntica de valor.