VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 853|回复: 4

XXView.h中用加上#include "XXDoc.h" 吗?

[复制链接]

1

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-2-5 13:30:02 | 显示全部楼层 |阅读模式
编译出错:CHanoiDoc* GetDocument();这一行

error C2143: syntax error : missing ';' before '*'
error C2501: 'CHanoiDoc' : missing storage-class or type specifiers
error C2501: 'GetDocument' : missing storage-class or type specifiers  

只有加上#include "HanoiDoc.h" 编译才通过,可在其它工程中不加也可以.所以我想是其它地方错,但不知错在哪,望指点.
回复

使用道具 举报

0

主题

36

帖子

22.00

积分

新手上路

Rank: 1

积分
22.00
发表于 2020-4-17 12:00:01 | 显示全部楼层
没有错。
如果不想加头文件,可以改为
class CHanoiDoc* GetDocument();
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-4-19 11:45:01 | 显示全部楼层
你在MainFrame 里面访问了view 的成员。
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-4-22 12:45:01 | 显示全部楼层
在文件头加一句
class CHanoiDoc;
看看行不行
回复

使用道具 举报

1

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-7-22 16:00:01 | 显示全部楼层
回复zippodiy
    是的,我后来也发现了只要在其它类中#include "XXView.h”就出现这个问题。
我觉得奇怪,一般类在头文件中用到其它类,都要在其头文件中包含相应的头文件,如果在其cpp中包含,编译器就不“认识”。为什么View类就可以
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表