import (attribut)

La directive d’importation spécifie un autre fichier IDL, ODL ou en-tête contenant des définitions que vous souhaitez référencer à partir de votre fichier IDL principal.

import "filename" [[ , ... ]] ;

Paramètres

filename

Spécifie le nom du fichier d’en-tête, d’IDL ou d’ODL à importer.

Notes

Avec la directive d’importation , toutes les instructions IDL du fichier importé, telles que typedefs, déclarations constantes et définitions d’interface, deviennent disponibles pour l’importation. Fichier IDL.

Le fichier importé est traité séparément (ce qui signifie que le préprocesseur CPP est appelé indépendamment) du fichier IDL d’importation. De cette façon, les directives de pré-processeur, telles que #define, ne passent pas d’un fichier d’en-tête ou d’IDL importé au fichier IDL d’importation.

Comme la macro de préprocesseur du langage C #include, la directive d’importation indique au compilateur d’inclure des types de données définis dans les fichiers IDL importés. Contrairement à la directive #include , la directive d’importation ignore les prototypes de procédure, car aucun stub n’est généré pour n’importe quoi dans le fichier importé.

Pour plus d’informations sur l’utilisation de l’importation pour inclure des fichiers d’en-tête dans un fichier IDL, consultez Importation de fichiers d’en-tête système.

En-tête C-language (. Le fichier H) généré pour l’interface ne contient pas directement les types importés, mais génère plutôt une directive #include pour le fichier d’en-tête correspondant à l’interface importée. Par exemple, lorsque vous importez BASE. IDL dans votre DÉRIVÉ. IDL, fichier d’en-tête généré DÉRIVÉ. H contiendra la directive #include BASE.H.

Les règles suivantes s’appliquent :

  • Le mot clé d’importation est facultatif et peut apparaître zéro ou plusieurs fois dans le fichier IDL.
  • Chaque mot clé d’importation peut être associé à plusieurs noms de fichier.
  • Séparez plusieurs noms de fichiers avec des virgules.
  • Vous devez placer le nom de fichier entre guillemets et terminer l’instruction import avec un point-virgule (;)).
  • Vous pouvez importer une interface qui n’a aucun attribut dans un autre fichier IDL. Toutefois, l’interface doit contenir uniquement des types de données ; elle ne peut contenir aucune procédure. Si même une procédure est contenue dans l’interface importée, vous devez spécifier un attribut local ou UUID .
  • La fonction d’importation est idempotent â€" c’est-à-dire l’importation d’une interface plusieurs fois n’a aucun effet supplémentaire.

Remarque

Le comportement de la directive d’importation est indépendant des commutateurs en mode compilateur MIDL /ms_ext (valeur par défaut), /osf et /app_config. Toutefois, le mode compilateur (/osf ou /ms_ext) peut affecter la décoration des attributs de pointeur sur les types importés. Pour plus d’informations, consultez l’héritage de type pointeur-attribut.

 

Exemples

import "myoldodl.odl";  
import "unknwn.idl";
import "part1.idl", "part2.idl", "part3.idl"; 

Voir aussi

/app_config

Fichier IDL (Interface Definition)

importlib

Inclure

Importation de fichiers d’en-tête système

Importation de fichiers et de bibliothèques de types

/ms_ext

/osf