共用方式為


/Yc (建立先行編譯標頭檔)

指示編譯程式建立代表特定時間點編譯狀態的先行編譯標頭 (.pch) 檔案。

語法

/Yc
/Yc檔名

引數

filename
指定標頭 (.h) 檔案。 使用這個自變數時,編譯程式會將所有程式代碼編譯為 ,包括 .h 檔案。

備註

未指定 /Yc 自變數時,編譯程式會將所有程式代碼編譯到基底原始程式檔的結尾,或編譯至發生 hdrstop 指示詞的基底檔案中的點。 除非您使用 hdrstop pragma 或 /Fp 選項指定不同的檔名,否則產生的 .pch 檔案與基底來源檔案具有相同的基底名稱。

先行編譯的程式代碼會儲存在以 /Yc 選項和 .pch 擴展名指定之檔案基底名稱所建立名稱的檔案中。 您也可以使用 /Fp (名稱 。Pch File) 選項,可指定先行編譯頭文件的名稱。

如果您使用 /Yc檔名,編譯程式會將所有程式代碼編譯為 ,並包含指定的檔案,以供後續搭配 /Yu 使用 [使用先行編譯頭檔] 選項使用。

如果選項 /Yc檔名/Yu檔名發生在相同的命令行和兩個參考上,或表示相同的檔名 /Yc檔名優先。 這項功能可簡化makefiles的撰寫。

如需先行編譯標頭的詳細資訊,請參閱:

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

  1. 選取.cpp檔案。 .cpp檔案必須 #include 包含先行編譯頭資訊的 .h 檔案。 您可以在檔案層級覆寫專案的 /Yc 設定。

  2. 開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性

  3. 開啟 [ 組態屬性]、 [C/C++]、[ 先行編譯標頭 ] 屬性頁。

  4. 修改先行編譯的 Header 屬性。

  5. 若要設定檔名,請修改 先行編譯頭文件 屬性。

若要以程式方式設定這個編譯器選項

範例

請考慮下列程式碼:

// prog.cpp
// compile with: cl /c /Ycmyapp.h prog.cpp
#include <afxwin.h>   // Include header for class library
#include "resource.h" // Include resource definitions
#include "myapp.h"    // Include information specific to this app
// ...

使用 命令 CL /YcMYAPP.H PROG.CPP編譯此程序代碼時,編譯程式會將 AFXWIN.h、RESOURCE.h 和 MYAPP.h 的所有前置處理儲存在名為 MYAPP.pch 的先行編譯頭檔中。

另請參閱

MSVC 編譯器選項
MSVC 編譯器命令列語法
先行編譯標頭檔