无法解析的外部符号的问题

时间:2021-06-22 20:35:53
我在一个大的MFC工程里新建了一个chengxu.cpp和chengxu.h,然后把原来的一个功能拷贝到了chengxu.cpp和chengxu.h里面,出现了这样的错误:
1>Crushdir.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct CRuntimeClass * __thiscall CCrushdir::GetRuntimeClass(void)const " (?GetRuntimeClass@CCrushdir@@UBEPAUCRuntimeClass@@XZ)

1>Crushdir.obj : error LNK2001: 无法解析的外部符号 "class ATL::CStringT<wchar_t,class StrTraitMFC<wchar_t,class ATL::ChTraitsCRT<wchar_t> > > csFileCrush" (?csFileCrush@@3V?$CStringT@_WV?$StrTraitMFC@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@A)

1>.\Debug/fingerman.exe : fatal error LNK1120: 2 个无法解析的外部命令
我还是个新手,希望大家能多多帮忙,谢谢

4 个解决方案

#1


关闭,删除.ncb,重新开

#2


http://blog.csdn.net/changbaolong/article/details/8479775
另外自己百度查一下“error LNK2001: 无法解析的外部符”出现时的几种情况及解决办法。

#3


你不会把拷贝的成员函数类名也拷过来了吧?
还有头文件不能互相包含。如a.h中有#include "b.h",而b.h中有#include "a.h".

#4


chengxu::函数名()
目测是这个问题

#1


关闭,删除.ncb,重新开

#2


http://blog.csdn.net/changbaolong/article/details/8479775
另外自己百度查一下“error LNK2001: 无法解析的外部符”出现时的几种情况及解决办法。

#3


你不会把拷贝的成员函数类名也拷过来了吧?
还有头文件不能互相包含。如a.h中有#include "b.h",而b.h中有#include "a.h".

#4


chengxu::函数名()
目测是这个问题