"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo garantizan los encabezados de la biblioteca estándar de C++ la inclusión de otros encabezados o proporcionan funciones específicas sin una inclusión explícita?

¿Cómo garantizan los encabezados de la biblioteca estándar de C++ la inclusión de otros encabezados o proporcionan funciones específicas sin una inclusión explícita?

Publicado el 2024-12-23
Navegar:607

How do C   standard library headers guarantee the inclusion of other headers or provide specific functions without explicit inclusion?

Encabezados en la biblioteca estándar de C con inclusiones garantizadas

En la mayoría de los casos, los encabezados de la biblioteca estándar de C tienen relaciones de inclusión no especificadas. Sin embargo, existen excepciones en las que encabezados específicos garantizan la inclusión de otros encabezados o proporcionan ciertas funciones sin su inclusión.

Encabezados garantizados para incluir encabezados específicos:

  • Lista de inicializadores () está incluida por:

    • Utilidad ()
    • Cadena ()
    • Matriz ()
    • Sacar de cola ()
    • Lista de reenvío ( )
    • Lista ()
    • Vector ()
    • Mapa ()
    • Conjunto ()
    • Mapa desordenado ()
    • Conjunto desordenado ()
    • Cola ()
    • Pila ()
    • Algoritmo ()
    • Aleatorio ()
    • Valarray ()
    • Regex ()
  • Secuencia de entrada/salida () incluye:

    • Estado de entrada/salida ()
    • Búfer de flujo ()
    • flujo de entrada ( )
    • Secuencia de salida ()
  • Estado de entrada/salida () incluye:

    • Declaraciones directas ()
  • Conjunto de bits () incluye:

    • Cadena ()
    • Declaraciones directas ()

Garantía de encabezados Disponibilidad de funciones:

Las plantillas de funciones std::begin, std::end y sus variantes (cbegin, crend, etc.) se definen principalmente en el encabezado Iterador (). Sin embargo, también están disponibles cuando se incluye cualquiera de los siguientes encabezados:

  • Array ()
  • Sacar de cola ()
  • Lista de reenvío ( )
  • Lista ()
  • Mapa ()
  • Regex ()
  • Conjunto ()
  • Cadena ()
  • Mapa desordenado ()
  • Conjunto desordenado ()
  • Vector ()

Al incluir std::string_view (), las funciones *begin, *end y las sobrecargas genéricas std::swap están disponibles. Sin embargo, el tamaño, el vacío y los datos no lo son.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3