/headerUnit (Użyj jednostki nagłówka IFC)

Importuje jednostkę nagłówka. Informuje kompilator, gdzie należy znaleźć .ifc plik (binarną reprezentację jednostki nagłówka) dla określonego nagłówka.

Składnia

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

Argumenty

header-filename
Podczas import header-name; kompilatora header-name jest rozpoznawany plik na dysku. Użyj header-filename polecenia , aby określić ten plik. Po dopasowaniu kompilator otwiera odpowiednie IFC nazwane przez ifc-filename do importowania.

ifc-filename
Nazwa pliku zawierającego skompilowane informacje o jednostce nagłówka. Aby zaimportować więcej niż jedną jednostkę nagłówka, dodaj oddzielną /headerUnit opcję dla każdego pliku.

Uwagi

Opcja kompilatora /headerUnit wymaga /std:c++20 lub nowszego.

Opcja kompilatora /headerUnit jest dostępna w programie Visual Studio 2019 w wersji 16.10 lub nowszej.

Gdy kompilator występuje import "file"; lub import <file>; ta opcja kompilatora ułatwia kompilatorowi znalezienie skompilowanej jednostki nagłówka (.ifc) dla określonego pliku nagłówka. Ścieżkę do tego pliku można wyrazić na następujące sposoby:

  • /headerUnit wyszukuje skompilowany nagłówek w bieżącym katalogu lub w lokalizacji określonej przez ifc-filename.

  • /headerUnit:quote wyszukuje skompilowany plik jednostki nagłówka przy użyciu tych samych reguł co #include "file".

  • /headerUnit:angle wyszukuje skompilowany plik jednostki nagłówka przy użyciu tych samych reguł co #include <file>.

Kompilator nie może mapować pojedynczego pliku header-name na wiele .ifc plików. Mapowanie wielu header-name argumentów na jeden .ifc jest możliwe, ale nie jest zalecane. Zawartość obiektu .ifc jest importowana tak, jakby była tylko nagłówka określonego przez header-nameelement .

Kompilator niejawnie włącza nowy preprocesor, gdy ta opcja jest używana. Jeśli w wierszu polecenia zostanie określona dowolna forma /headerUnit , /Zc:preprocessor zostanie dodana do wiersza polecenia przez kompilator. Aby zrezygnować z niejawnego /Zc:preprocessorelementu , określ: /Zc:preprocessor-

Jeśli wyłączysz nowy preprocesor, ale skompilowany plik importuje jednostkę nagłówka, kompilator zgłosi błąd.

Przykłady

Biorąc pod uwagę projekt, który odwołuje się do dwóch plików nagłówków i ich jednostek nagłówka, jak pokazano w tej tabeli:

Plik nagłówka Plik IFC
C:\utils\util.h C:\util.h.ifc
C:\app\app.h C:\app\app.h.ifc

Opcje kompilatora odwołujące się do jednostek nagłówka dla tych konkretnych plików nagłówków będą wyglądać następująco:

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

Aby ustawić tę opcję kompilatora w środowisku programowania Visual Studio

Zwykle nie należy tego ustawiać w środowisku projektowym programu Visual Studio. Jest on ustawiany przez system kompilacji.

Zobacz też

/exportHeader (Utwórz jednostki nagłówka)
/headerName (Utwórz jednostkę nagłówka z określonego nagłówka)
/reference (Użyj nazwanego modułu IFC)
/translateInclude (Tłumaczenie dyrektyw dołączania do dyrektyw importu)