Visual Studio 2019 创建MFC程序, 运行时碰到error
1>uafxcwd.lib(afxmem.obj) : error LNK2005: “void * __cdecl operator new(unsigned __int64)” (??2@YAPEAX_K@Z) 已经在 LIBCMTD.lib(new_scalar.obj) 中定义
1>uafxcwd.lib(afxmem.obj) : error LNK2005: “void __cdecl operator delete(void *)” (??3@YAXPEAX@Z) 已经在 LIBCMTD.lib(delete_scalar.obj) 中定义
1>uafxcwd.lib(afxmem.obj) : error LNK2005: “void __cdecl operator delete[](void *)” (??_V@YAXPEAX@Z) 已经在 LIBCMTD.lib(delete_array.obj) 中定义
解决方案
项目属性->配置属性->连接器->输入, 附加依赖库加入
Uafxcwd.lib;Libcmtd.lib
如果项目编码不是Unicode, 替换成 Nafxcwd.lib;Libcmtd.lib