/headerUnit
(Utiliser l’unité d’en-tête IFC)
Importe une unité d’en-tête. Indique au compilateur où trouver le .ifc
fichier (représentation binaire de l’unité d’en-tête) pour l’en-tête spécifié.
Syntaxe
/headerUnit
header-filename
=ifc-filename
/headerUnit:quote
header-filename
=ifc-filename
/headerUnit:angle
header-filename
=ifc-filename
Arguments
header-filename
Pendant import header-name;
la résolution header-name
du compilateur sur un fichier sur le disque. Permet header-filename
de spécifier ce fichier. Une fois mis en correspondance, le compilateur ouvre l’IFC correspondant nommé par ifc-filename
l’importation.
ifc-filename
Nom d’un fichier qui contient des informations d’unité d’en-tête compilées. Pour importer plusieurs unités d’en-tête, ajoutez une option distincte /headerUnit
pour chaque fichier.
Notes
L’option /headerUnit
du compilateur nécessite /std:c++20
ou une version ultérieure.
L’option /headerUnit
du compilateur est disponible dans Visual Studio 2019 version 16.10 ou ultérieure.
Lorsque le compilateur se trouve import "file";
ou import <file>;
que cette option de compilateur aide le compilateur à trouver l’unité d’en-tête compilée (.ifc
) pour le fichier d’en-tête spécifié. Le chemin d’accès à ce fichier peut être exprimé de ces manières :
/headerUnit
recherche l’unité d’en-tête compilée dans le répertoire actif ou à l’emplacement spécifié parifc-filename
./headerUnit:quote
recherche le fichier d’unité d’en-tête compilé à l’aide des mêmes règles que#include "file"
./headerUnit:angle
recherche le fichier d’unité d’en-tête compilé à l’aide des mêmes règles que#include <file>
.
Le compilateur ne peut pas mapper un seul header-name
à plusieurs .ifc
fichiers. Vous pouvez mapper plusieurs header-name
arguments à un seul .ifc
. Le contenu du fichier .ifc
est importé comme s’il s’agissait uniquement de l’en-tête spécifié par header-name
.
Le compilateur active implicitement le nouveau préprocesseur lorsque cette option est utilisée. Si une forme de /headerUnit
données est spécifiée sur la ligne de commande, elle /Zc:preprocessor
est ajoutée à la ligne de commande par le compilateur. Pour refuser l’implicite /Zc:preprocessor
, spécifiez : /Zc:preprocessor-
Si vous désactivez le nouveau préprocesseur, mais qu’un fichier que vous compilez importe une unité d’en-tête, le compilateur signale une erreur.
Exemples
Compte tenu d’un projet qui référence deux fichiers d’en-tête et leurs unités d’en-tête, comme indiqué dans ce tableau :
Fichier d’en-tête | Fichier IFC |
---|---|
C:\utils\util.h |
C:\util.h.ifc |
C:\app\app.h |
C:\app\app.h.ifc |
Les options du compilateur pour référencer les unités d’en-tête pour ces fichiers d’en-tête particuliers ressemblent à ceci :
cl ... /std:c++latest /headerUnit C:\utils\util.h=C:\util.h.ifc /headerUnit:quote app.h=app.h.ifc
Pour définir cette option du compilateur dans l'environnement de développement Visual Studio
Vous ne devez normalement pas le définir dans l’environnement de développement Visual Studio. Il est défini par le système de build.
Voir aussi
/exportHeader
(Créer des unités d’en-tête)
/headerName
(Créer une unité d’en-tête à partir de l’en-tête spécifié)
/reference
(Utiliser le module NOMMÉ IFC)
/translateInclude
(Traduire les directives include en directives d’importation)