编译器警告 C4439

function name”:签名中具有托管类型的函数定义必须具有 __clrcall 调用约定

注解

编译器隐式地将调用约定替换为 __clrcall。 若要解决此警告,请删除 __cdecl__stdcall 调用约定。

始终发出 C4439 错误。 可以使用 #pragma warning/wd 来关闭此警告。 有关详细信息,请参阅warning/w/W0、、/W1/W2/W3/W4/w1/w2/w3/w4/Wall/wd/we/wo/Wv/WX(警告级别)。

示例

以下示例生成 C4439:

// C4439.cpp
// compile with: /clr
void __stdcall f( System::String^ arg ) {}   // C4439
void __clrcall f2( System::String^ arg ) {}   // OK
void f3( System::String^ arg ) {}   // OK