Espacios de nombres
Variantes
Acciones

Achivos de cabecera de la biblioteca estándar de C++

De cppreference.com
< cpp
 
 
Archivos de encabezado de la biblioteca estándar
 

La interfaz de la biblioteca estándar de C++ se define por la siguiente colección de archivos de cabecera.

{{dsc inc|cpp/header/dsc forward_list}

Contenido

Biblioteca de conceptos

Conceptos fundamentales de la biblioteca [editar]

Biblioteca de corrutinas

Biblioteca de soporte de corrutinas [editar]

Biblioteca de utilidades

(C++17)
Clase std::any [editar]
plantilla de clase std::bitset [editar]
(C++11)
Utilidades de tiempo de C++ [editar]
(C++20)
Apoyo para el operador de comparación de tres vías. [editar]
Macro (y función) que guarda (y salta a) un contexto de ejecución [editar]
Funciones y macros de constantes para control se señales [editar]
Manejo de listas de argumentos de longitud variable [editar]
Macros y definiciones de tipos typedefs estándar [editar]
Utilidades de propósito general: control de programa, asignación de memoria dinámica, números aleatorios, ordenación y búsqueda [editar]
Utilidades de tiempo y fecha estilo C [editar]
Biblioteca de depuración [editar]
Plantilla de clase std::expected [editar]
Objetos función, invocaciones de función, operaciones de vinculación y envoltorios de referencias [editar]
Plantilla de clase std::initializer_list. [editar]
Plantilla de clase std::optional [editar]
Proporciona maneras de obtener ubicación de código fuente [editar]
(C++11)
Plantilla de clase std::tuple [editar]
Información de tipo en tiempo de compilación [editar]
std::type_index [editar]
Utilidades de información de tipo en tiempo de ejecución [editar]
Various Componentes de utilidad [editar]
(C++17)
Plantilla de clase std::variant [editar]
(C++20)
Proporciona información de la biblioteca dependiente de la implementación [editar]
Gestión de memoria dinámica
Utilidades de gestión de memoria de alto nivel [editar]
Asignadores de memoria polimórficos y recursos de memoria [editar]
Utilidades de gestión de memoria de bajo nivel [editar]
Clase anidada de asignación de memoria [editar]
Límites numéricos
Límites de tipos de coma flotante [editar]
Macros de formato, intmax_t y uintmax_t matemática y conversiones [editar]
Límites de tipos enteros [editar]
(C++11)
Tipos enteros de tamaño fijo y límites de otros tipos [editar]
Manera estandarizada de consultar las propiedades de los tipos aritméticos [editar]
Tipos de punto flotante extendidos opcionales [editar]
Control de errores
Macro compilada condicionalmente que compara sus argumentos con cero [editar]
Macro que contiene el número del último error [editar]
Utilidades de control de excepciones [editar]
Biblioteca de seguimiento de pila [editar]
Objetos de excepción estándar [editar]
Define std::error_code, un código de error dependiente de la plataforma [editar]

Biblioteca de cadenas de texto

Funciones para determinar la categoría de caracteres estrechos [editar]
std::to_chars y std::from_chars [editar]
Varias funciones para manejo de cadenas de texto de caracteres estrechos [editar]
(C++11)
Funciones de conversión de caracteres Unicode estilo C [editar]
Varias funciones para manejo de cadenas anchas y multibyte [editar]
Funciones para determinar la categoría de caracteres anchos [editar]
(C++20)
Biblioteca de formato, incluyendo std::format [editar]
Plantilla de clase std::basic_string [editar]
Plantilla de clase std::basic_string_view [editar]

Biblioteca de contenedores

(C++11)
Contenedor std::array [editar]
Contenedor std::deque [editar]
Adaptadores de contenedor std::flat_map y std::flat_multimap [editar]
Adaptadores de contenedor std::flat_set y std::flat_multiset [editar]
Contenedor std::list [editar]
Contenedores asociativos std::map y std::multimap [editar]
(C++23)
Vista std::mdspan [editar]
Adaptadores de contenedor std::queue y std::priority_queue [editar]
Contenedores asociativos std::set y std::multiset [editar]
(C++20)
Vista std::span [editar]
Adaptador de contenedor std::stack [editar]
Contenedores asociativos no ordenados std::unordered_map y std::unordered_multimap [editar]
Contenedores asociativos no ordenados std::unordered_set y std::unordered_multiset [editar]
Contenedor std::vector [editar]

Biblioteca de iteradores

Iteradores de rango [editar]

Biblioteca de rangos

Plantilla de clase std::generator [editar]
(C++20)
Acceso, primitivas, requerimientos, utilidades y adaptadores para rangos [editar]

Biblioteca de algoritmos

Algoritmos que operan sobre rangos [editar]
Políticas de ejecución predefinidas para versiones paralelas de algoritmos [editar]

Biblioteca numérica

(C++20)
Funciones de manipulación de bits [editar]
(C++11)
Funciones de acceso del entorno de coma flotante [editar]
Funciones matemáticas comunes [editar]
Tipo de número complejo [editar]
(C++26)
Algoritmos de algebra lineal básica [editar]
(C++20)
Constantes matemáticas [editar]
Operaciones numéricas sobre valores en rangos [editar]
(C++11)
Generadores de números aleatorios y distribuciones [editar]
(C++11)
Aritmética racional en tiempo de compilación [editar]
Clase para representar y manipular arrays de valores [editar]

Biblioteca de localización

Utilidades de localización de C [editar]
(C++11)(en desuso en C++17)(eliminado en C++26)
Funciones de conversión Unicode [editar]
Utilidades de localización [editar]
Identificaciones de codificación de texto [editar]

Biblioteca de entrada/salida

Funciones de entrada/salida estilo C [editar]
Plantillas de clase std::basic_fstream, std::basic_ifstream, std::basic_ofstream y varias definiciones de tipo [editar]
Funciones de asistencia para controlar en formato de entrada/salida [editar]
Clase std::ios_base, plantilla de clase std::basic_ios y varias definiciones de tipo. [editar]
Declaraciones adelantadas de todas las clases en la biblioteca de entrada/salida. [editar]
Varios objetos de flujo estándar [editar]
Plantilla de clase std::basic_istream y varias definiciones de tipo. [editar]
Plantillas de clase std::basic_ostream, std::basic_iostream y varias definiciones de tipo. [editar]
(C++23)
Biblioteca de salida formateada, incluyendo std::print [editar]
Plantillas de clase std::basic_spanstream, std::basic_ispanstream y std::basic_ospanstream, y definiciones de tipos [editar]
Plantillas de clase std::basic_stringstream, std::basic_istringstream y std::basic_ostringstream, y varias definiciones de tipos [editar]
Plantilla de clase std::basic_streambuf. [editar]
(en desuso en C++98)
std::strstream, std::istrstream, std::ostrstream [editar]
std::basic_osyncstream, std::basic_syncbuf, y definiciones de tipos [editar]

Biblioteca de sistema de ficheros

clase std::path y funciones de soporte [editar]

Biblioteca de expresiones regulares

(C++11)
Clases, algoritmos e iteradores de soporte de proceso de expresiones regulares [editar]

Biblioteca de operaciones atómicas

(C++11)
Biblioteca a operaciones atómicas [editar]

Biblioteca de soporte de hilos/subprocesos

(C++20)
Barreras [editar]
Condiciones de espera de hilos [editar]
(C++11)
Primitivas para cálculos asíncronos [editar]
Indicadores de peligro [editar]
(C++20)
Barrera de hilos de un solo uso [editar]
(C++11)
Primitivas de exclusión mutua [editar]
(C++26)
Mecanismos de actualización de lectura y copia [editar]
Semáforos [editar]
Primitivas de exclusión mutua compartidas [editar]
Símbolos de detención para std::jthread [editar]
(C++11)
Clase std::thread y funciones de soporte [editar]

[editar] Archivos de encabezado de compatibilidad con C

Para algunos de los archivos de encabezado de biblioteca estándar de C de la forma xxx.h, la biblioteca estándar de C++ incluye un archivo de encabezado con un nombre idéntico y otro archivos de encabezado de la forma cxxx (todos los archivos de encabezado significativos cxxx se enumeran arriba). El uso previsto de las cabeceras en formato xxx.h es para la interoperabilidad únicamente. Es posible que los archivos fuente de C++ necesiten incluir una de estas cabeceras para ser C ISO válido. Los archivos fuentes que no están destinados a ser C ISO válidos no deben usar ninguno de las cabeceras de C.

Con la excepción de complex.h , cada archivo de encabezado xxx.h incluido en la biblioteca estándar de C++ coloca en el espacio de nombres global cada nombre que el archivo de encabezado xxx.h correspondiente habría colocado en el espacio de nombres std.

Estos archivos de encabezado también pueden declarar los mismos nombres en el espacio de nombres std, y los archivos de encabezado cxxx correspondientes también pueden declarar los mismos nombres en el espacio de nombres global: incluir <cstdlib> por supuesto proporciona std::malloc y también puede proporcionar ::malloc. Incluir <stdlib.h> por suspuesto proporciona a ::malloc y también puede proporcionar std::malloc. Esto se aplica incluso a funciones y sobrecargas de funciones que no forman parte de la biblioteca estándar de C.

Notes: La cabeceras xxx.h están en desuso en C++98 y no en desuso en C++23. Estas cabeceras no se recomiendan para código C++ puro, pero no están sujetas a una eliminación futura.

(en desuso)
Se comporta igual que <cassert> [editar]
(en desuso)
Se comporta como si cada nombre de <cctype> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta igual que <cerrno> [editar]
(C++11)(en desuso)
Se comporta como si cada nombre en <cfenv> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta igual que <cfloat> [editar]
(C++11)(en desuso)
Se comporta como si cada nombre de <cinttypes> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta igual que <climits> [editar]
(en desuso)
Se comporta como si cada nombre de <clocale> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cmath> se colocara en espacio de nombres global,
excepto para los nombres de las funciones matemáticas especiales [editar]
(en desuso)
Se comporta como si cada nombre de <csetjmp> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <csignal> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cstdarg> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cstddef> se colocara en el espacio de nombres global,
excepto para los nombres de std::byte y funciones relacionadas [editar]
(C++11)(en desuso)
Se comporta como si cada nombre de <cstdint> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cstdio> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cstdlib> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cstring> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <ctime> se colocara en el espacio de nombres global [editar]
(C++11)(en desuso)
Se comporta como si cada nombre de <cuchar> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cwchar> se colocara en el espacio de nombres global [editar]
(en desuso)
Se comporta como si cada nombre de <cwctype> se colocara en el espacio de nombres global [editar]

[editar] Cabeceras especiales de compatibilidad con C

La cabecera <stdatomic.h> declara nombres que también se proporcionan en la biblioteca estándar de C, y define la macro _Atomic que es una palabra clave en C. A diferencia de otras cabeceras xxx.h, no se proporciona la <cstdatomic> correspondiente.

(C++23)(en desuso)
Define _Atomic y proporciona los componentes correspondientes en la biblioteca estándar de C [editar]

[editar] Archivos de encabezados de C vacíos

Los archivos de encabezado <complex.h>, <ccomplex>, <tgmath.h>, y <ctgmath> no contienen contenido de la biblioteca estándar de C y en su lugar solamente incluyen otros archivos de encabezado de la biblioteca estándar de C++. El uso de todos estos archivos de encabezado está en desuso en C++.

(C++11)(en desuso en C++17)(eliminado en C++20)
Simplemente incluye la cabecera <complex> [editar]
(C++11)(en desuso)
Simplemente incluye la cabecera <complex> [editar]
(C++11)(en desuso en C++17)(eliminado en C++20)
Simplemente incluye las cabeceras <complex> y <cmath>: las sobrecargas equivalentes al contenido de la cabecera C tgmath.h ya están proporcionados por esas cabeceras [editar]
(C++11)(en desuso)
Simplemente incluye las cabeceras <complex> y <cmath> [editar]

[editar] Archivos de encabezado de C sin significado

Los archivos de encabezado <ciso646>, <cstdalign>, y <cstdbool> no tienen significado en C++ porque las macros que proporcionan en C son palabras clave en C++.

(eliminado en C++20)
Cabecera vacía. Las macros que aparecen en iso646.h en C son palabras clave en C++ [editar]
(C++11)(en desuso en C++17)(eliminado en C++20)
Define una macro constante de compatibilidad [editar]
(C++11)(en desuso en C++17)(eliminado en C++20)
Define una macro constante de compatibilidad [editar]
(en desuso)
No tiene efecto [editar]
(C++11)(en desuso)
Define una macro constante de compatibilidad [editar]
(C++11)(en desuso)
Define una macro constante de compatibilidad [editar]

[editar] Archivos de encabezado de C no soportados

Los archivos de encabezado de C <stdatomic.h>, (hasta C++23) <stdnoreturn.h>, y <threads.h> no se incluyen en C++ y no tienen equivalentes c”xxx”.

[editar] Bibliotecas experimentales

Las especificaciones técnicas de C++ también definen varias colecciones de archivos de encabezado.

[editar] Véase también

Documentación de C para Archivos de encabezado de la biblioteca estándar de C