編譯器錯誤 C2733
您無法使用 'C' 連結多載函式
使用連結宣告 extern "C"
多個多載函式。 使用 "C"
連結時,只有一種指定的函式形式可以是外部。 由於多載函式具有相同的未編碼名稱,因此無法與 C 程式搭配使用。
由於 Visual Studio 2019 中的一致性變更,升級之後可能會發生此錯誤。 從 Visual Studio 2019 16.3 版開始,編譯 /Zc:externC-
程式選項會放寬這項檢查。 選項必須位於命令列上的任何 /permissive-
選項之後。
範例
下列範例會產生 C2733:
// C2733.cpp
extern "C" {
void F1(int);
}
extern "C" {
void F1(); // C2733
// try the following line instead
// void F2();
}
另請參閱
編譯器錯誤 C2116
extern
(C++)
/Zc:externC
(使用標準 C++ extern "C"
規則)