3.1.2.- Sintaxis para declarar Librerías en el lenguaje de C++
La declaración de librerías, tanto en C como en C++, se debe hacer al principio de todo nuestro código, antes de la declaración de cualquier función o línea de código, debemos indicarle al compilador que librerías usar, para el saber qué términos estarán correctos en la escritura de nuestro código y cuáles no. La sintaxis es la siguiente: #include <nombre de la librería> o alternativamente #include "nombre de la librería". Cualquiera de las 2 formas es válido en C++ (no estoy seguro si en C sea válido), ten en cuenta que siempre el nombre de la librería debe ir entre " y " o entre < y >. En tu código puedes declarar todas las librerías que quieras, aunque en realidad no tienen sentido declarar una librería que no vas a usar en tu programa, sin embargo, no existe límite para esto.
3.1.3.- Librerías estándar en el lenguaje de C++
A continuación, pondré algunas de las librerías de uso más común de C++ y que forman parte de las librerías estándar de este lenguaje.
fstream: Flujos hacia/desde ficheros. Permite la manipulación de archivos desde el programar, tanto leer como escribir en ellos.
iosfwd: Contiene declaraciones adelantadas de todas las plantillas de flujos y sus typedefs estándar. Por ejemplo, ostream.
iostream: Parte del a STL que contiene los algoritmos estándar, es quizá la más usada e importante (aunque no indispensable).
La biblioteca list: Parte de la STL relativa a contenedores tipo list; listas doblemente enlazadas
math: Contiene los prototipos de las funciones y otras definiciones para el uso y manipulación de funciones matemáticas.
memory: Utilidades relativas a la gestión de memoria, incluyendo asignadores y punteros inteligentes (auto_ptr).
"auto_ptr" es una clase que conforma la librería memory y permite un fácil manejo de punteros y su destrucción automáticamente.
Biblioteca new: Manejo de memoria dinámica
numeric: Parte de la librería numérica de la STL relativa a operaciones numéricas.
ostream: Algoritmos estándar para los flujos de salida.
queue: Parte de la STL relativa a contenedores tipo queue (colas de objetos).
Librería stdio: Contiene los prototipos de las funciones, macros, y tipos para manipular datos de entrada y salida.
Librería stdlib: Contiene los prototipos de las funciones, macros, y tipos para utilidades de uso general
string: Parte de la STL relativa a contenedores tipo string; una generalización de las cadenas alfanuméricas para albergar cadenas de objetos. Muy útil para el fácil uso de las cadenas de caracteres, pues elimina muchas de las dificultades que generan los char.
typeinfo: Mecanismo de identificación de tipos en tiempo de ejecución
vector: Parte de la STL relativa a los contenedores tipo vector; una generalización de las matrices unidimensionales C/C++
forward_list: Esta librería es útil para implementar con gran facilidad listas enlazadas simples.
list: Permite implementar listas doblemente enlazados (listas enlazadas dobles) fácilmente.
iterator: Proporciona un conjunto de clases para iterar elementos.
regex: Proporciona fácil acceso al uso de expresiones regulares para la comparación de patrones.
thread: Útil para trabajar programación multihilos y crear múltiples hilos en nuestra aplicación.
time: Útil para obtener marcas de tiempo durante ejecución. Se usa con frecuencia para conocer el tiempo exacto durante un programa.