Standard Template Library

La Standard Template Library (STL) es una biblioteca de software para el lenguaje de programación C++ que ha influido en varias partes de la biblioteca estándar de C++. Esta provee de cuatro componentes denominados algoritmos, contenedores, iteradores y funciones.

La STL proporciona un conjunto prefabricado de las clases comunes de C++, tales como contenedores y arrays asociativos, que se pueden utilizar con cualquier tipo incorporado y con cualquier tipo definido por el usuario que admita algunas operaciones elementales (como la copia y la asignación). Los algoritmos STL son independientes de los contenedores, lo que reduce significativamente la complejidad de la librería.

La STL logra sus resultados mediante el uso de plantillas. Este enfoque proporciona polimorfismo en tiempo de compilación que a menudo es más eficiente que el tradicional polimorfismo en tiempo de ejecución. Los compiladores C++ modernos están perfeccionados para minimizar cualquier penalización de abstracción derivada de un uso intensivo de la STL.

La STL se creó como la primera biblioteca de algoritmos genéricos y estructuras de datos para C++, con cuatro ideas en mente: programación genérica, abstracción sin pérdida de eficiencia, la arquitectura de Von Neuman, y la semántica de valor.

La STL y la biblioteca estándar de C++ son dos entidades distintas, aunque a veces se denomina «la STL» a aquellas partes de la biblioteca estándar de C++ que fueron directamente influidas por la STL o heredadas de ella.

Referencias

  1. ↑ Holzner, Steven (2001). C++ : Black Book. Scottsdale, Ariz.: Coriolis Group. p. 648. ISBN 1-57610-777-9. «The STL is made up of containers, iterators, function objects, and algorithms».
  2. ↑ Musser, David (2001). STL tutorial and reference guide: C++ programming with the standard template library. Addison Wesley. ISBN 0-201-37923-6.
  3. ↑ «What's the difference between "STL" and "C++ Standard Library"?». Stack Overflow (en inglés). Consultado el 2 de octubre de 2026.

Enlaces externos