高分求助,现谢谢了。

xyzguan 2003-09-11 02:24:48
我现在有一个类在一个头文件中
a.h
class A
{
……
}

在另一个类的头文件b.h中,我不想包含a.h(cpp中可以包含),但是还要用A这个类,如何做?

b.h

class B
{
A *a;
}

...全文
22 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
InternetEmail 2003-09-12
  • 打赏
  • 举报
回复
in b.h

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

in b.cpp
#include "a.h"

把class B声明为class A的friend当然行,
nirvana_li 2003-09-12
  • 打赏
  • 举报
回复
TO tstimes(tstimes) :
声明为friend可能不太安全,那类A就可以操作B类的data member,这个方法不是很好.
我认为还是上面说的那样就可以了.先声明class A;再到.cpp去#include "a.h"
Bandry 2003-09-12
  • 打赏
  • 举报
回复
这个问题已经问过很多次了,C++教材里面不是有说过这个问题的吗?
用提前声明,注意变量必须是指针类型,否则编译不过
liu_swallow 2003-09-12
  • 打赏
  • 举报
回复
b.h

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


in b.cpp
#include "a,h"

tstimes 2003-09-12
  • 打赏
  • 举报
回复
把class B声明为class A的friend行不行?
l1ul1u 2003-09-11
  • 打赏
  • 举报
回复
yym314(小鸟) 说的对
先声明class A;
在到.cpp去包含
elvahuang 2003-09-11
  • 打赏
  • 举报
回复
class A;
顶楼上的
dddd8888 2003-09-11
  • 打赏
  • 举报
回复
先声明class A;
yym314 2003-09-11
  • 打赏
  • 举报
回复
in b.h

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


in b.cpp
#include "a,h"

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧