Compartir vía


/headerUnit (Use el IFC de unidad de encabezado)

Importa una unidad de encabezado. Indica al compilador dónde encontrar el archivo .ifc (la representación binaria de la unidad de encabezado) para el encabezado especificado.

Sintaxis

/headerUnit header-filename=ifc-filename
/headerUnit:quote header-filename=ifc-filename
/headerUnit:angle header-filename=ifc-filename

Argumentos

header-filename
Durante import header-name; el compilador resuelve header-name en un archivo del disco. Use header-filename para especificar ese archivo. Una vez que se encuentra una coincidencia, el compilador abre el IFC correspondiente denominado por ifc-filename para su importación.

ifc-filename
Nombre de un archivo que contiene información de la unidad de encabezado compilada. Para importar más de una unidad de encabezado, agregue una opción /headerUnit independiente para cada archivo.

Comentarios

La opción del compilador /headerUnit requiere /std:c++20 o posterior.

La opción del compilador /headerUnit está disponible en Visual Studio 2019, versión 16.10 o posteriores.

Cuando el compilador encuentra import "file"; o import <file>;, esta opción del compilador ayuda a este a encontrar la unidad de encabezado compilada (.ifc) para el archivo de encabezado especificado. La ruta de acceso a este archivo se puede expresar de estas formas:

  • /headerUnit busca la unidad de encabezado compilada en el directorio actual o en la ubicación que ifc-filename especifica.

  • /headerUnit:quote busca el archivo de unidad de encabezado compilada con las mismas reglas que #include "file".

  • /headerUnit:angle busca el archivo de unidad de encabezado compilada con las mismas reglas que #include <file>.

El compilador no puede asignar un único elemento header-name a varios archivos .ifc. Puede asignar varios header-name argumentos a un solo .ifc. El contenido de .ifc se importa como si solo fuera el encabezado especificado por header-name.

El compilador habilita de forma implícita el nuevo preprocesador cuando se usa esta opción. Si se especifica alguna forma de /headerUnit en la línea de comandos, el compilador agrega /Zc:preprocessor a la línea de comandos. Para descartar el elemento /Zc:preprocessor implícito, especifique /Zc:preprocessor-.

Si deshabilita el preprocesador nuevo, pero un archivo de los que compila importa una unidad de encabezado, el compilador notificará un error.

Ejemplos

Si se especifica un proyecto que hace referencia a dos archivos de encabezado y a sus unidades de encabezado, como se muestra en esta tabla:

Archivo de encabezado Archivo IFC
C:\utils\util.h C:\util.h.ifc
C:\app\app.h C:\app\app.h.ifc

Las opciones del compilador para hacer referencia a las unidades de encabezado de estos archivos de encabezado concretos tendrían un aspecto similar a este:

cl ... /std:c++latest /headerUnit C:\utils\util.h=C:\util.h.ifc /headerUnit:quote app.h=app.h.ifc

Para establecer esta opción del compilador en el entorno de desarrollo de Visual Studio

Normalmente, no debería establecerla en el entorno de desarrollo de Visual Studio. La establece el sistema de compilación.

Consulte también

/exportHeader (creación de unidades de encabezado)
/headerName (creación de una unidad de encabezado a partir del encabezado especificado)
/reference (uso de IFC de módulo con nombre)
/translateInclude (traducción de directivas include a directivas import)