Compartir a través de


atributo import

La directiva import especifica otro archivo IDL, ODL o encabezado que contiene definiciones a las que desea hacer referencia desde el archivo IDL principal.

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

Parámetros

filename

Especifica el nombre del archivo de encabezado, IDL o ODL que se va a importar.

Observaciones

Con la directiva import , todas las instrucciones IDL del archivo importado, como typedefs, declaraciones de constantes y definiciones de interfaz están disponibles para la importación. Archivo IDL.

El archivo importado se procesa por separado (lo que significa que el preprocesador de CPP se invoca independientemente) desde el archivo IDL de importación. De este modo, las directivas de preprocesador, como #define, no se transfieren de un encabezado importado o archivo IDL al archivo IDL de importación.

Al igual que la macro de preprocesador del lenguaje C #include, la directiva import indica al compilador que incluya los tipos de datos definidos en los archivos IDL importados. A diferencia de la directiva #include , la directiva import omite los prototipos de procedimiento, ya que no se generan códigos auxiliares para nada en el archivo importado.

Para obtener información específica sobre el uso de la importación para incluir archivos de encabezado en un archivo IDL, vea Importación de archivos de encabezado del sistema.

Encabezado del lenguaje C (. El archivo H) generado para la interfaz no contiene directamente los tipos importados, sino que genera una directiva #include para el archivo de encabezado correspondiente a la interfaz importada. Por ejemplo, al importar BASE. IDL en el elemento DERIVADO. IDL, el archivo de encabezado generado DERIVADO. H contendrá la directiva #include BASE.H.

Se aplican las reglas siguientes:

  • La palabra clave import es opcional y puede aparecer cero o más veces en el archivo IDL.
  • Cada palabra clave import se puede asociar a más de un nombre de archivo.
  • Separe varios nombres de archivo con comas.
  • Debe incluir el nombre de archivo entre comillas y finalizar la instrucción import con un punto y coma (;).
  • Puede importar una interfaz que no tenga atributos en otro archivo IDL. Sin embargo, la interfaz solo debe contener tipos de datos; no puede contener ningún procedimiento. Si incluso un procedimiento está incluido en la interfaz importada, debe especificar un atributo LOCAL o UUID .
  • La función de importación es idempotente; es decir, la importación de una interfaz más de una vez no tiene ningún efecto adicional.

Nota:

El comportamiento de la directiva de importación es independiente del modo de compilador MIDL cambia /ms_ext (valor predeterminado), /osf y /app_config. Sin embargo, el modo del compilador (/osf o /ms_ext) puede afectar a la decoración de atributos de puntero en los tipos importados. Para obtener más información, consulte herencia de tipos dePointer-Attribute.

 

Ejemplos

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

Consulte también

/app_config

Archivo de definición de interfaz (IDL)

importlib

incluír

Importación de archivos de encabezado del sistema

Importación de archivos y bibliotecas de tipos

/ms_ext

/osf