Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La directive d’importation spécifie un autre fichier IDL, ODL ou header 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, IDL ou ODL à importer.
Remarques
Avec la directive d’importation , toutes les instructions IDL du fichier importé, telles que les typesdefs, les déclarations de constantes et les 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 en-tête ou d’un fichier IDL importé au fichier IDL d’importation.
Comme la macro de préprocesseur C-language #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 quoi que ce soit 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 de langage C (. 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, le 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 par des virgules.
- Vous devez placer le nom de fichier entre guillemets et mettre fin à 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 pas contenir de procédures. 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 idempotente, c’est-à-dire l’importation d’une interface plusieurs fois n’a aucun effet supplémentaire.
Note
Le comportement de la directive d’importation est indépendant des commutateurs du 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, consultezPointer-Attribute héritage de type.
Exemples
import "myoldodl.odl";
import "unknwn.idl";
import "part1.idl", "part2.idl", "part3.idl";
Voir également