Warum haben STL-Headerdateien keine Erweiterung?

8

Ich habe diese grundlegenden Zweifel. Der STL-Header hat keine .h Erweiterung.

%Vor%

Gibt es einen bestimmten Grund dafür? Jeder weiß die Geschichte dahinter, bitte teilen.

BEARBEITEN :

  

@GMan hat gefunden Michael Burrs Antwort   was diese Frage angeht.

    
aJ. 23.05.2009, 09:34
quelle

1 Antwort

9
  • Die # include-Direktive diskriminiert Dateitypen nicht (es ist nur eine verherrlichte Copy-Paste-Operation) - es findet kein automatisches Hinzufügen von .h statt.
  • C ++ - Standardheaderdateien werden ohne die Erweiterung .h
  • bereitgestellt
  • Manchmal werden Rückwärtskompatibilitätsheaderdateien vom Hersteller mit demselben Namen mit der Erweiterung .h
  • bereitgestellt

Es hat alles mit Namensräumen zu tun. Die Gegenstücke .h für C ++ - Standard-Header enthält normalerweise den richtigen C ++ - Standard-Header (ohne die Erweiterung .h) und gibt dann eine Menge davon aus (etwa so):

DATEI: iostream.h

%Vor%

wobei die Headerdatei ohne die Erweiterung .h den Namensraum nicht mit allen definierten Klassen und Typen verschmutzt.

    
Anders Hansson 23.05.2009, 09:51
quelle

Tags und Links