/headerUnit (Verwenden der Kopfzeileneinheit IFC)

Importiert eine Kopfzeileneinheit. Teilt dem Compiler mit, wo die .ifc Datei (die binäre Darstellung der Headereinheit) für den angegebenen Header gefunden werden soll.

Syntax

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

Argumente

header-filename
Während import header-name; des Compilers header-name wird eine Datei auf dem Datenträger aufgelöst. Verwenden Sie header-filename diese Datei, um diese Datei anzugeben. Nach der Übereinstimmung öffnet der Compiler den entsprechenden IFC, der nach ifc-filename dem Import benannt wurde.

ifc-filename
Der Name einer Datei, die kompilierte Kopfzeileneinheitsinformationen enthält. Wenn Sie mehrere Headereinheiten importieren möchten, fügen Sie für jede Datei eine separate /headerUnit Option hinzu.

Hinweise

Die /headerUnit Compileroption erfordert /std:c++20 oder höher.

Die /headerUnit Compileroption ist in Visual Studio 2019, Version 16.10 oder höher, verfügbar.

Wenn der Compiler oder diese Compileroption den import "file";import <file>; Compiler dabei unterstützt, die kompilierte Headereinheit (.ifc) für die angegebene Headerdatei zu finden. Der Pfad zu dieser Datei kann auf folgende Weise ausgedrückt werden:

  • /headerUnit Sucht die kompilierte Kopfzeileneinheit im aktuellen Verzeichnis oder an dem durch ifc-filename.

  • /headerUnit:quote Sucht die kompilierte Headereinheitsdatei mit den gleichen Regeln wie #include "file".

  • /headerUnit:angle Sucht die kompilierte Headereinheitsdatei mit den gleichen Regeln wie #include <file>.

Der Compiler kann mehrere header-name.ifc Dateien nicht zuordnen. Das Zuordnen mehrerer header-name Argumente zu einem einzelnen .ifc ist möglich, wird jedoch nicht empfohlen. Der Inhalt des Elements .ifc wird importiert, als ob es nur die kopfzeile war, die durch header-name.

Der Compiler aktiviert implizit den neuen Präprozessor, wenn diese Option verwendet wird. Wenn in der Befehlszeile eine beliebige Form /headerUnit angegeben wird, wird sie /Zc:preprocessor der Befehlszeile vom Compiler hinzugefügt. Um die implizite /Zc:preprocessorDeaktivierung zu deaktivieren, geben Sie Folgendes an: /Zc:preprocessor-

Wenn Sie den neuen Präprozessor deaktivieren, aber eine Datei, die Sie kompilieren, importiert eine Headereinheit, meldet der Compiler einen Fehler.

Beispiele

Bei einem Projekt, das auf zwei Headerdateien und deren Kopfzeileneinheiten verweist, wie in dieser Tabelle aufgeführt:

Headerdatei IFC-Datei
C:\utils\util.h C:\util.h.ifc
C:\app\app.h C:\app\app.h.ifc

Die Compileroptionen zum Verweisen auf die Headereinheiten für diese bestimmten Headerdateien würden wie folgt aussehen:

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

So legen Sie diese Compileroption in der Visual Studio-Entwicklungsumgebung fest

Normalerweise sollten Sie dies in der Visual Studio-Entwicklungsumgebung nicht festlegen. Sie wird vom Buildsystem festgelegt.

Siehe auch

/exportHeader (Erstellen von Headereinheiten)
/headerName (Erstellen einer Kopfzeileneinheit aus der angegebenen Kopfzeile)
/reference (Verwenden des benannten Moduls IFC)
/translateInclude (Übersetzen von include-Anweisungen in import-Anweisungen)