分享方式:


嚴重錯誤 C1010

尋找先行編譯的標頭時出現非預期的檔案結尾。 您是否忘記將 「#include 名稱 」新增至來源?

備註

/Yu 指定的 include 檔案並未列在原始程式檔中。 此選項預設會在許多 Visual Studio C++ 專案類型中啟用。 此選項所指定的預設 include 檔案為 pch.h ,或 Visual Studio 2017 和更早版本中的 stdafx.h

在 Visual Studio 環境中,使用下列其中一種方法來解決此錯誤:

  • 請確定您沒有不小心從目前專案刪除、重新命名或移除 pch.h 標頭檔或 pch.cpp 原始程式檔。 (在較舊的專案中,這些檔案可能命名為 stdafx.h stdafx.cpp .

  • 請確定原始 程式檔中任何其他程式碼或預處理器指示詞之前,已包含 pch.h stdafx.h 標頭檔。 (在 Visual Studio 中,此標頭檔是由 所 指定先行編譯標頭檔 專案屬性。)

  • 您可以關閉先行編譯的標頭。 如果您關閉先行編譯的標頭,它可能會嚴重影響組建效能。

關閉先行編譯標頭

若要關閉專案中的先行編譯標頭使用,請遵循下列步驟:

  1. [方案總管] 視窗中,以滑鼠右鍵按一下專案名稱,然後選擇 [ 屬性] 以開啟 [ 屬性 ] 對話方塊。

  2. 在 [ 組態 ] 下拉式清單中,選取 [ 所有組態 ]。

  3. 選取 [ 組態屬性 > C/C++ > 先行編譯標頭 ] 屬性頁。

  4. 在屬性清單中,選取 [先行編譯標頭] 屬性的 下拉式清單,然後選擇 [ 不使用先行編譯 標頭 ]。 選取 [確定] 儲存您的變更。

  5. [方案總管] 視窗中,以滑鼠右鍵按一下專案中的 pch.cpp 原始程式檔。 (在較舊的專案中,檔案可能命名為 stdafx.cpp .選擇 [從專案 排除] 將其從組建中移除。

  6. 針對您所建置的每個組態,使用 [建 > 置清除方案 ] 功能表命令,刪除中繼組建目錄中的任何 project_name.pch 檔案。

另請參閱

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