/Zc:externC
(使用標準C++ extern "C"
規則)
編譯 /Zc:externC
程式選項會告知編譯程式符合C++標準,並針對宣告為 extern "C"
的函式強制執行一致的參數宣告。
語法
/Zc:externC
/Zc:externC-
備註
編譯 /Zc:externC
程式選項會檢查使用 extern "C"
宣告的函式定義。
此選項 /Zc:externC
可從 Visual Studio 2019 16.3 版開始使用。 這個選項未設定時 /permissive-
關閉。 在舊版的Visual Studio中,根據預設或指定, /Zc:externC-
Visual Studio 對於比對函式的宣告是寬鬆的 extern "C"
。 選項 /permissive-
會啟用 /Zc:externC
,因此預設會在使用 /std:c++20
或 /std:c++latest
的項目中開啟。 選項 /Zc:externC
必須位於命令列上的選項之後 /permissive-
。
不相符 extern "C"
的宣告可能會導致編譯程序錯誤 C2116 和 C2733。 在C++程序代碼中,如果您多次宣告函 extern "C"
式並使用不同的參數類型,即使類型具有相同的定義,也會發生錯誤。 此選項 /Zc:externC-
會放寬這項檢查,而且不會產生這些錯誤。
在 Visual Studio 中設定這個編譯器選項
開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性。
選取 [組態屬性]>[C/C++]>[命令列] 屬性頁。
將 或
/Zc:externC-
新增/Zc:externC
至 [其他選項:] 窗格。