编译器警告(级别 1,错误)C4394
“function”: per-appdomain 符号不应该用 __declspec(%s) 进行标记
使用 appdomain __declspec
修饰符标记的函数将编译为 MSIL(非本机),并且托管函数不支持导出表(export__declspec
修饰符)。
您可以将托管函数声明为具有公共可访问性。 有关详细信息,请参阅类型可见性和成员可见性。
始终发出 C4394 错误。 你可以使用 #pragma warning
或 /wd 关闭此警告或更改其级别。 有关详细信息,请参阅警告或 /w、/W0、/W1、/W2、/W3、/W4、/w1、/w2、/w3、/w4、/Wall、/wd、/we、/wo、/ Wv、/WX(警告级别)。
示例
下面的示例生成 C4394。
// C4394.cpp
// compile with: /clr /c
__declspec(dllexport) __declspec(appdomain) int g1 = 0; // C4394
__declspec(dllexport) int g2 = 0; // OK
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈