c – 错误C2733第二个C连接超载功能’功能’不允许

c – 错误C2733第二个C连接超载功能’功能’不允许,第1张

概述我正在Visual Studio 2010 pro中编译旧的cpp MFC项目. 它使用使用Labview编译的dll,并且我添加这些信息,因为我不知道是什么导致错误消息.. 错误消息显示在多个功能上,都是相同的错误类型. error C2733: second C linkage of overloaded function 'function name' not allowed. ‘函数名’包 我正在Visual Studio 2010 pro中编译旧的cpp MFC项目.

它使用使用LabvIEw编译的dll,并且我添加这些信息,因为我不知道是什么导致错误消息..

错误消息显示在多个功能上,都是相同的错误类型.

error C2733: second C linkage of overloaded function 'function name' not allowed.

‘函数名’包括:’StrCatW’,’StrCmpNW’,’StrCmpW’,’StrcpyNW’和’StrcpyW’

我在网上发现了一个similar case.

虽然链接中的建议在我的情况下没有解决,我仍然看到相同的错误消息.

提前感谢任何人试图帮助.

解决方法 我没有MFC的经验,反正我会尽量回答.
当使用不同的参数集声明外部“C”函数时,会出现此错误消息.例如:
extern "C" int myfunc(int);extern "C" int myfunc(char);

在你的情况下,这两个声明可能与char *有关:

extern "C" char* StrCatW(char*,char*);extern "C" wchar_t* StrCatW(wchar_t*,wchar_t*);

尝试在您的解决方案中关闭Unicode支持:我猜,如果dll很旧,它以某种方式声明具有char *参数的StrCatW,与其他声明冲突.

如果没有帮助,打开预处理输出(/ E编译器切换,就我所说) – 它将输出一个非常大的文件,所以在其中查找StrCatW,也许会给你一些线索上.

总结

以上是内存溢出为你收集整理的c – 错误C2733第二个C连接超载功能’功能’不允许全部内容,希望文章能够帮你解决c – 错误C2733第二个C连接超载功能’功能’不允许所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1235559.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存