Parte II. La librería Estándar de C++

El C++ Estándar no solo incorpora todas las librerías de Estándar C (con pequeños añadidos y cambios para permitir tipos seguros), también añade sus propias librerías. Estas librerías son mucho más potentes que las de C. La mejora al usarlas es análoga a la que se consigue al cambiar de C a C++.

Esta sección del libro le da una introducción en profundidad a las partes clave de la librería Estándar de C++.

La referencia más completa y también la más oscura para las librerías es el propio Estándar. The C++ Programming Language, Third Edition (Addison Wesley, 2000) de Bjarne Stroustrup sigue siendo una referencia fiable tanto para el lenguaje como para la librería. La referencia más aclamada en cuanto a la librería es The C++ Standard Library: A Tutorial and Reference, by Nicolai Josuttis (Addison Wesley, 1999). El objetivo de los capítulos de esta parte del libro es ofrecer un catálogo de descripciones y ejemplos para que disponga de un buen punto de partida para resolver cualquier problema que requiera el uso de las librerías Estándar. Sin embargo, algunas técnicas y temas se usan poco y no se tratan aquí. Si no puede encontrar algo en estos capítulos, mire en los dos libros que se citan anteriormente; esto libro no pretende reemplazarlos, más bien completarlos. En particular, esperamos que después de consular el material de los siguientes capítulos pueda comprender mejor esos libros.

El lector notará que estos capítulos no contienen documentación exhaustiva describiendo cada función o clase del la Librería Estándar C++. Hemos dejado las descripciones completas a otros; en particular a Dinkumware C/C++ Library Reference de P.J. Plauger. Esta es una excelente documentación que puede puede ver con un navegador web cada vez que necesite buscar algo. Puede verla on-line o comprarla para verla en local. Contiene una referencia completa para las librerías de C y C++ (de modo que es buena para cualquier cuestión de programación en C/C++ Estándar). La documentación electrónica no sólo es efectiva porque pueda tenerla siempre a mano, sino porque también puede hacer búsquedas electrónicas.

Cuando usted está programando activamente, estos recursos deberían satisfacer sus necesidades de referencias (y puede usarlas para buscar algo de este capítulo que no tenga claro). El Apéndice A incluye referencias adicionales.

El primer capítulo de esta sección introduce la clase string del Estándar C++, que es una herramienta potente que simplifica la mayoría de las tareas de procesamiento de texto que podría tener que realizar. Casi cualquier cosas que tenga hecho para cadenas de caracteres en C puede hacerse con una llamada a un método de la clase string.

El capítulo 4 cubre la librería iostreams, que contiene clases para procesar entrada y salida con ficheros, cadenas, y la consola del sistema.

Aunque el Capítulo 5: «Las plantillas a fondo» no es explícitamente un capítulo de la librería, es una preparación necesaria para los dos siguientes capítulos. En el capítulo 6 examinaremos los algoritmos genéricos que ofrece la librería Estándar C++. Como están implementados con plantillas, esos algoritmos se pueden aplicar a cualquier secuencia de objetos. El Capítulo 7 cubre los contenedores estándar y sus iteradores asociados Vemos los algoritmos primero porque se pueden utilizar usando únicamente arrays y el contenedor vector (que vimos en el Volumen 1). También es normal el uso de algoritmos estándar junto con contenedores, y es bueno que le resulten familiares antes de estudiar los contenedores.