如题:
-
error LNK2005: “void __cdecl operator delete(void *)” (??3@YAXPAX@Z) 已经在 LIBCMTD.lib(delete_scalar.obj) 中定义
-
fatal error LNK1169: 找到一个或多个多重定义的符号
我只是定义了一个类,还是自动生成的,连类里面的内容都没有写,就报了一个2005,一个1169,如图所示。

查看了网上的资料,发现大多提到的原因都是 重定义了某些函数或者变量,让我直接就懵逼了,我只是写了个类,构造函数都还是空的,怎么会重定义?
项目->属性->高级->MFC的使用
将下图的第三步即 在静态库中使用MFC 改为在 共享DLL中使用MFC,报错解决。


解决LNK2005与LNK1169错误

本文介绍了解决Visual Studio中LNK2005和LNK1169错误的方法。这两种错误通常出现在链接阶段,提示函数或变量被多次定义。文章提供了一种简单有效的解决方案:通过修改项目设置,在共享DLL中使用MFC而非静态库。
2704

被折叠的 条评论
为什么被折叠?



