/Gm (啟用最少重建)
已取代。 啟用最少重建,其可判定是否需要重新編譯包含已變更 C++ 類別定義 (儲存於標頭 (.h) 檔) 的 C++ 原始程式檔。
語法
/Gm
備註
/Gm 已被取代。 它可能不會針對某些類型的標頭檔變更觸發組建。 您可以安全地從專案移除此選項。 若要改善建置時間,建議您改用先行編譯標頭和累加和平行建置選項。 如需已淘汰的編譯器選項清單,請參閱 依類別 列出的編譯器選項中 已被取代和移除的編譯器選項 一節。
編譯器在第一次編譯期間,會在專案的 .idb 檔中,儲存原始程式檔與類別定義之間的相依性資訊 (相依性資訊會告知哪個原始程式檔與哪個類別定義相依,以及該定義位於哪個 .h 檔)。後續編譯會使用儲存在 .idb 檔中的資訊,來判定是否需要編譯原始程式檔,即使其包括已修改的 .h 檔。
注意
最少重建依賴於包含檔之間未變更的類別定義。 對於專案來說,類別定義必須是全域的 (給定類別應該只有一個定義),這是因為 .idb 檔中的相依性資訊是針對整個專案建立的。 如果專案中類別具有多個定義,請停用最少重建。
由於累加連結器不支援使用 /ZW (Windows 執行階段 編譯) 選項包含在 .obj 檔案中的 Windows 中繼資料, 因此 /Gm 選項與 /ZW 不相容。
在 Visual Studio 開發環境中設定這個編譯器選項
開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性。
選取 [ 組態屬性 > C/C++ > 程式碼產生 ] 屬性頁。
修改 Enable Minimal Rebuild 屬性。
若要以程式方式設定這個編譯器選項
- 請參閱 MinimalRebuild。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應