我将C ++ dll转换为C dll:
#ifdef __cplusplus
extern "C" {
#endif
MY_EXPORT int my_func();
MY_EXPORT void my_func(int n);
#ifdef __cplusplus
}
#endif
没有extern C
声明,一切正常。有了这个宣言,我得到了
错误C2733:重载函数'my_func'的第二个C链接没有 允许
为什么不允许从C风格的dll导出重载函数?
答案 0 :(得分:8)
C不允许重载功能。那就是C不支持重载。这是C ++的一个特性。