分享方式:


/headerUnit (使用標頭單位 IFC)

匯入標頭單位。 告知編譯程式在何處尋找 .ifc 指定標頭的檔案(標頭單位的二進位表示法)。

語法

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

引數

header-filename
在編譯程式期間 import header-name; ,會 header-name 解析為磁碟上的檔案。 使用 header-filename 來指定該檔案。 比對之後,編譯程式會開啟由 命名 ifc-filename 的對應 IFC 以進行匯入。

ifc-filename
包含已編譯標頭單位信息的檔名。 若要匯入多個標頭單位,請為每個檔案新增個別 /headerUnit 的選項。

備註

編譯 /headerUnit 程式選項需要 /std:c++20 或更新版本。

Visual Studio 2019 16.10 版或更新版本提供編譯 /headerUnit 程序選項。

當編譯程式遇到 import "file";import <file>; 這個編譯程式選項時,編譯程式會協助編譯程式尋找所指定頭檔所編譯的標頭單位 (.ifc)。 此檔案的路徑可以透過下列方式表示:

  • /headerUnit 查閱目前目錄中的已編譯標頭單位,或位於 所 ifc-filename指定的位置。

  • /headerUnit:quote 使用與 相同的規則 #include "file"來查閱已編譯的頭檔單元檔案。

  • /headerUnit:angle 使用與 相同的規則 #include <file>來查閱已編譯的頭檔單元檔案。

編譯程式無法將單 header-name 一對應至多個 .ifc 檔案。 您可以將多個 header-name 自變數對應至單 .ifc一 。 的內容 .ifc 會匯入,就像它只是 所 header-name指定的標頭一樣。

使用此選項時,編譯程式會隱含地啟用新的預處理器。 如果在命令行上指定任何形式的 /headerUnit ,編譯 /Zc:preprocessor 程式就會新增至命令行。 若要選擇離開隱含 /Zc:preprocessor,請指定: /Zc:preprocessor-

如果您停用新的預處理器,但您編譯的檔案會匯入標頭單位,編譯程式會報告錯誤。

範例

指定參考兩個標頭檔及其標頭單位的專案,如下表所列:

頭檔 IFC 檔案
C:\utils\util.h C:\util.h.ifc
C:\app\app.h C:\app\app.h.ifc

參考這些特定頭檔之標頭單位的編譯程式選項看起來會像這樣:

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

在 Visual Studio 開發環境中設定這個編譯器選項

您通常不應該在 Visual Studio 開發環境中設定此專案。 它是由建置系統所設定。

另請參閱

/exportHeader (建立標頭單位)
/headerName (從指定的標頭建立標頭單位)
/reference (使用具名模組 IFC)
/translateInclude (將 include 指示詞轉譯為 import 指示詞)