在编译时出现:
1>正在编译...
1>PreviewDlg.cpp
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : warning C4183: “GetDocument”: 缺少返回类型;假定为返回“int”的成员函数
从上面可以看出,出错是在编译PreviewDlg.cpp时,错误原因是我在PreviewDlg.cpp中使用了VIEW类,但只包含了XXXView.h而没有包含XXXDoc.h.应该这样:
#include "XXXDoc.h"
#include "XXXView.h"
注意两个的顺序不能调换,调换了也会报错
1>正在编译...
1>PreviewDlg.cpp
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\zac\project\vs2008\projects\dipalgorithm\dipalgorithmview.h(46) : warning C4183: “GetDocument”: 缺少返回类型;假定为返回“int”的成员函数
从上面可以看出,出错是在编译PreviewDlg.cpp时,错误原因是我在PreviewDlg.cpp中使用了VIEW类,但只包含了XXXView.h而没有包含XXXDoc.h.应该这样:
#include "XXXDoc.h"
#include "XXXView.h"
注意两个的顺序不能调换,调换了也会报错
本文详细介绍了在使用VIEW类时遇到的编译错误,原因在于仅包含了视图头文件而未包含文档头文件。通过正确包含文档头文件并遵循头文件顺序规则,可以解决C++编译时出现的语法错误和类型说明符缺失的问题。
2261

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



