编译器警告(等级 1)C4190
“identifier1”指定了 C 链接,但返回 UDT“identifier2”,这与 C 不兼容
函数或指向函数的指针具有 UDT(用户定义的类型,它是类、结构、枚举或联合)作为返回类型和 extern "C"
链接。 如果具备以下条件,那么,这样是合法的:
所有对此函数的调用都来自 C++。
该函数的定义是采用 C++ 的。
示例
// C4190.cpp
// compile with: /W1 /LD
struct X
{
int i;
X ();
virtual ~X ();
};
extern "C" X func (); // C4190
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈