Maison > développement back-end > C++ > Comment les en-têtes de bibliothèque standard C garantissent-ils l'inclusion d'autres en-têtes ou fournissent-ils des fonctions spécifiques sans inclusion explicite ?

Comment les en-têtes de bibliothèque standard C garantissent-ils l'inclusion d'autres en-têtes ou fournissent-ils des fonctions spécifiques sans inclusion explicite ?

Barbara Streisand
Libérer: 2024-10-29 09:05:30
original
346 Les gens l'ont consulté

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

En-têtes de la bibliothèque standard C avec inclusions garanties

Dans la plupart des cas, les en-têtes de la bibliothèque standard C ont des relations d'inclusion non spécifiées. Cependant, il existe des exceptions où des en-têtes spécifiques garantissent l'inclusion d'autres en-têtes ou fournissent certaines fonctions sans leur inclusion.

En-têtes garantis pour inclure des en-têtes spécifiques :

  • La liste d'initialisations () est incluse par :

    • Utility ()
    • String ()
    • Array ()
    • Supprimer la file d'attente ()
    • Transférer la liste ()
    • Liste (< list>)
    • Vecteur ()
    • Carte ()
    • Ensemble ()
    • Carte non ordonnée ()
    • Ensemble non ordonné ()
    • File d'attente ()
    • Pile ()
    • Algorithme ()
    • Aléatoire ()
    • Valarray ()
    • Regex ()
  • Flux d'entrée/sortie () comprend :

    • État d'entrée/sortie ()
    • Tampon de flux ()
    • Flux d'entrée ()
    • Flux de sortie ()
  • État d'entrée/sortie () comprend :

    • Déclarations avant ()
  • Bitset () comprend :

    • Chaîne ()
    • Déclarations avant (

En-têtes garantissant la disponibilité des fonctions :

Les modèles de fonctions std::begin, std::end, et leurs variantes (cbegin, crend, etc.) sont principalement définis dans l'en-tête Iterator (). Cependant, ils sont également disponibles en incluant l'un des en-têtes suivants :

  • Array ()
  • Supprimer la file d'attente ()
  • Transférer la liste ()
  • Liste (< list>)
  • Map ()
  • Regex ()
  • Set ()
  • String ( )
  • Carte non ordonnée ()
  • Ensemble non ordonné ()
  • Vecteur ()

Lors de l'inclusion de std::string_view (), les fonctions *begin, *end et les surcharges génériques std::swap deviennent disponibles. Cependant, la taille, le vide et les données ne le sont pas.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal