C++ Biblioteca estándar
La biblioteca estándar de C++ incluye un conjunto de archivos de cabecera que proporcionan diversas funciones y herramientas, cubriendo entrada/salida, contenedores, algoritmos, multihilo, expresiones regulares, etc.
La biblioteca estándar de C++ se puede dividir en dos partes:
- Biblioteca de funciones estándar:Esta biblioteca está compuesta por funciones genéricas, independientes y que no pertenecen a ninguna clase. La biblioteca de funciones hereda del lenguaje C.
- Biblioteca de clases orientada a objetos:Esta biblioteca es una colección de clases y sus funciones relacionadas.
La biblioteca estándar de C++ incluye toda la biblioteca estándar de C, con algunas adiciones y modificaciones para admitir la seguridad de tipos.
La siguiente es una lista de las principales categorías de componentes de la biblioteca estándar de C++ y sus archivos de cabecera correspondientes:
Entrada/Salida
<iostream>: flujo estándar de entrada/salida<fstream>: flujo de entrada/salida de archivos<sstream>: flujo de cadenas<iomanip>: formato de flujo de entrada/salida
Contenedores
<array>: contenedor de arreglo de longitud fija<vector>: contenedor de arreglo dinámico<deque>: contenedor de cola de doble extremo<list>: contenedor de lista doblemente enlazada<forward_list>: contenedor de lista simplemente enlazada<stack>: adaptador de contenedor de pila<queue>: adaptador de contenedor de cola<priority_queue>: adaptador de contenedor de cola de prioridad<set>: contenedor de conjunto (basado en árbol binario equilibrado)<unordered_set>: contenedor de conjunto desordenado (basado en tabla hash)<map>: contenedor de mapa (pares clave-valor, basado en árbol binario equilibrado)<unordered_map>: contenedor de mapa desordenado (basado en tabla hash)<bitset>: contenedor de bits
Algoritmos e iteradores
<algorithm>: algoritmos comunes (como ordenación, búsqueda, etc.)<iterator>: iteradores
Objetos de función y enlace
<functional>: define objetos de función y herramientas relacionadas
Operaciones matemáticas y numéricas
<numeric>: operaciones numéricas (como acumulación, producto, etc.)<complex>: operaciones con números complejos<valarray>: clase de arreglo y operaciones relacionadas<cmath>: funciones matemáticas
Cadenas y expresiones regulares
Tiempo y fecha
Multihilo y concurrencia
<thread>: soporte de multihilo<mutex>: exclusión mutua (mutex)<condition_variable>: variables de condición<future>: soporte de programación asíncrona<atomic>: operaciones atómicas
Gestión de memoria
Rasgos de tipo e identificación de tipo en tiempo de ejecución
<type_traits>: rasgos de tipo<typeinfo>: identificación de tipo en tiempo de ejecución
Manejo de excepciones
<exception>: clases base de manejo de excepciones y herramientas relacionadas<stdexcept>: clases de excepción comunes (comostd::runtime_erroretc.)
Operaciones de entrada/salida
Otras utilidades
<utility>: herramientas generales (comostd::pairystd::moveetc.)<random>: generación de números aleatorios<locale>: soporte de localización<codecvt>: conversión de codificación de caracteres<cassert>: aserciones<cctype>: manejo de caracteres<cstring>: manejo de cadenas<cwchar>: manejo de caracteres anchos<climits>: límites numéricos<cfloat>: límites de punto flotante<cstdlib>: herramientas comunes (comostd::randystd::absetc.)
Estos archivos de cabecera constituyen la base de la biblioteca estándar de C++, proporcionan funciones abundantes y permiten a los desarrolladores realizar diversos tipos de tareas de programación.
Otras extensiones