Frage

Was ist der Unterschied zwischen #include und #import in C ++?

War es hilfreich?

Lösung

#import ist eine Microsoft-spezifische Sache, anscheinend für COM oder .NET Sachen nur.

#include ist eine Standard-C / C ++ Präprozessoranweisung, verwendet für einschließlich Header (oder gelegentlich andere Quellcode-Dateien) in Ihrer Quellcodedatei.

Andere Tipps

Import in VC ++: #import ist für Typ-Bibliotheken oder .tlbs (COM Sachen).

Der Inhalt der Typbibliothek wird umgewandelt in C ++ Klassen, vor allem die COM-Schnittstellen beschreibt, automatisch für Sie, und dann wird es in Ihre Datei enthält.

Die #import Richtlinie wurde von Microsoft als Erweiterung der Sprache C ++ eingeführt. Sie können unter diesem MSDN-Artikel darüber lesen.

Die #import Richtlinie auch mit .NET / CLI Material verwendet wird.

Import in gcc: Der Import in gcc unterscheidet sich von dem Import in VC ++. Es ist eine einfache Art und Weise einen Kopf höchstens nur einmal aufzunehmen. (In VC ++ und GCC Sie können dies auch einmal über #pragma tun)

Die #import Richtlinie wurde vom gcc-Team in der Version 3.4 offiziell undeprecated und funktioniert gut 99% der Zeit in allen früheren Versionen von gcc, die Unterstützung

Fügen Sie: #include ist für meist Header-Dateien, sondern um den Inhalt Ihre aktuelle Datei vorangestellt wird. #include ist ein Teil des C ++ Standard. Sie können unter diesem MSDN-Artikel darüber lesen.

#import ist insgesamt ein Lösung zu den üblichen

#ifndef ...
#define ...
#include ...
#endif

Work-around. #import enthält eine Datei nur dann, wenn es nicht vor enthalten.

Es könnte sein, bemerkenswert, dass Apples Objective-C #import Aussagen auch verwendet.

Import war auch eines der Schlüsselwörter mit n2073, Module in C ++ , schlug die Sprache Ausschuss von Daveed Vandevoorde im September 2006. ich bin nicht genug eine Sprache aussenseiter zu wissen, ob dieser Vorschlag endgültig ad acta gelegt wurde, oder wenn es eine Implementierung (Proof of concept) vom Autor oder jemand anderes erwarten ...

Bitte beachten Sie, dass in gcc 4.1, #import ist veraltet. Wenn Sie es verwenden, werden Sie Warnung erhalten:

  

#import ist eine veraltete GCC-Erweiterung

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top