C++ 定义一个类会遇到的一些问题

时间:2022-08-30 00:22:51
1.  warning C4627: '#include "xxx.h"': skipped when looking for precompiled header use

          Add directive to 'stdafx.h' or rebuild precompiled header

原因:cpp 文件没有包含'stdafx.h' 

解决方案: 在头文件加入'stdafx.h' 


2.error C2248: 'CObject::operator =' : cannot access private member declared in class 'CObject' 

原因: 应用了 CArray 相关的对象  “=” 私有

解决方案:http://blog.csdn.net/vincent_lon/article/details/2950218


3.cpp.cpp(18) : fatal error C1071: unexpected end of file found in comment

解决方案: 删除文件最后注释,并空一行


4.unresolved external symbol "public: virtual struct CRuntimeClass *

原因: 你在头文件使用宏DECLARE_DYNAMIC(youclass) ,但是在cpp 文件没有加上 IMPLEMENT_DYNAMIC(CYourClass, CBaseClass) 

解决方案:在cpp 文件加上 IMPLEMENT_DYNAMIC(CYourClass, CBaseClass)  或者删除头文件DECLARE_DYNAMIC(youclass)