将一个类定义为另外一个类的成员时,出现的一个奇怪的问题?求解答

shcyl329 2014-01-26 03:38:12
我定义了两个类:A,B
当我在B的类中定义A为起一个私有成员时:A *a;编译器一直提示 error: ‘A’does not name a type

class B
{
.........
A *a;
..........
};

其中 A 类在另外一个文件中已经定义过,并且在这个文件中已经包含 A 类的头文件

...全文
129 点赞 收藏 3
写回复
3 条回复
soulfy 2014年01月28日
class A; class B { ......... A *a; .......... }; 在B类之前先声明A类
回复 点赞
Pandorym 2014年01月27日
定义前声明A类的存在。Class A。
头文件中只有类的指针声明,并没有实例化。
回复 点赞
dext 2014年01月27日
在class B 的定义前 加 class A;
回复 点赞
发动态
发帖子
Qt
创建于2009-11-04

1.0w+

社区成员

2.5w+

社区内容

Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区公告
暂无公告