Achivos de cabecera de la biblioteca estándar de C++
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}[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> |
(en desuso) |
Se comporta como si cada nombre de <cctype> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta igual que <cerrno> |
(C++11)(en desuso) |
Se comporta como si cada nombre en <cfenv> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta igual que <cfloat> |
(C++11)(en desuso) |
Se comporta como si cada nombre de <cinttypes> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta igual que <climits> |
(en desuso) |
Se comporta como si cada nombre de <clocale> se colocara en el espacio de nombres global |
(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 |
(en desuso) |
Se comporta como si cada nombre de <csetjmp> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <csignal> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <cstdarg> se colocara en el espacio de nombres global |
(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
|
(C++11)(en desuso) |
Se comporta como si cada nombre de <cstdint> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <cstdio> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <cstdlib> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <cstring> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <ctime> se colocara en el espacio de nombres global |
(C++11)(en desuso) |
Se comporta como si cada nombre de <cuchar> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <cwchar> se colocara en el espacio de nombres global |
(en desuso) |
Se comporta como si cada nombre de <cwctype> se colocara en el espacio de nombres global |
[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] 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> |
(C++11)(en desuso) |
Simplemente incluye la cabecera <complex> |
(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
|
(C++11)(en desuso) |
Simplemente incluye las cabeceras <complex> y <cmath> |
[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++
|
(C++11)(en desuso en C++17)(eliminado en C++20) |
Define una macro constante de compatibilidad |
(C++11)(en desuso en C++17)(eliminado en C++20) |
Define una macro constante de compatibilidad |
(en desuso) |
No tiene efecto |
(C++11)(en desuso) |
Define una macro constante de compatibilidad |
(C++11)(en desuso) |
Define una macro constante de compatibilidad |
[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
|