Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Importdirektive gibt eine andere IDL-, ODL- oder Headerdatei an, die Definitionen enthält, auf die Sie aus ihrer IDL-Hauptdatei verweisen möchten.
import "filename" [[ , ... ]] ;
Parameter
-
filename
-
Gibt den Namen der zu importierenden Header-, IDL- oder ODL-Datei an.
Bemerkungen
Mit der Importdirektive werden alle IDL-Anweisungen in der importierten Datei wie Typedefs, Konstantendeklarationen und Schnittstellendefinitionen für den Import verfügbar. IDL-Datei.
Die importierte Datei wird separat verarbeitet (d. h. der CPP-Präprozessor wird unabhängig von der importierenden IDL-Datei aufgerufen). Auf diese Weise übertragen Vorprozessordirektiven, z. B. #define, nicht aus einer importierten Header- oder IDL-Datei in die importierte IDL-Datei.
Wie das C-Language-Präprozessormakro #include weist die Importdirektive dem Compiler an, Datentypen einzuschließen, die in den importierten IDL-Dateien definiert wurden. Im Gegensatz zur #include-Direktive ignoriert die Importdirektive Prozedurprototypen, da keine Stubs für alle Elemente in der importierten Datei generiert werden.
Spezifische Informationen zur Verwendung des Imports zum Einschließen von Headerdateien in eine IDL-Datei finden Sie unter Importieren von Systemheaderdateien.
Der C-Sprachheader (. H) Die für die Schnittstelle generierte Datei enthält nicht direkt die importierten Typen, sondern generiert stattdessen eine #include Direktive für die Headerdatei, die der importierten Schnittstelle entspricht. Wenn Sie z. B. BASE importieren. IDL in Ihren ABGELEITETen. IDL, die generierte Headerdatei ABGELEITET. H enthält die Direktive #include BASE.H.
Es gelten die folgenden Regeln:
- Das Importschlüsselwort ist optional und kann in der IDL-Datei null oder mehr vorkommen.
- Jedes Importschlüsselwort kann mehreren Dateinamen zugeordnet werden.
- Trennen Sie mehrere Dateinamen durch Kommas.
- Sie müssen den Dateinamen in Anführungszeichen setzen und die Importanweisung mit einem Semikolon (;)) beenden.
- Sie können eine Schnittstelle importieren, die keine Attribute enthält, in eine andere IDL-Datei. Die Schnittstelle darf jedoch nur Datentypen enthalten; sie darf keine Prozeduren enthalten. Wenn selbst eine Prozedur in der importierten Schnittstelle enthalten ist, müssen Sie ein lokales oder UUID-Attribut angeben.
- Die Importfunktion ist idempotent – d. h. das Importieren einer Schnittstelle mehr als einmal hat keine zusätzliche Auswirkung.
Hinweis
Das Verhalten der Importdirektive ist unabhängig von den MIDL-Compilermodusschaltern /ms_ext (Standard), /osf und /app_config. Der Compilermodus (/osf oder /ms_ext) kann sich jedoch auf die Deko von Zeigerattributen für importierte Typen auswirken. Ausführliche Informationen finden Sie unter Pointer-Attribute Typvererbung.
Beispiele
import "myoldodl.odl";
import "unknwn.idl";
import "part1.idl", "part2.idl", "part3.idl";
Siehe auch