这个没问题的;
不过要这么定义:
class A; //前置声明 A
class B //定义 B
{
public:
A *m_b;
void pb(void)};class A //定义 A
{
public:
B m_a;
void pa(void)
};void A::pa(void)
{
m_a.m_b=this;
}
PS:
void A::pa(void)是 A的方法,是个成员函数。
只要 A 类的对象,定义了,就可以调用pa 初始化 m_a.m_b了。
不过要这么定义:
class A; //前置声明 A
class B //定义 B
{
public:
A *m_b;
void pb(void)};class A //定义 A
{
public:
B m_a;
void pa(void)
};void A::pa(void)
{
m_a.m_b=this;
}
PS:
void A::pa(void)是 A的方法,是个成员函数。
只要 A 类的对象,定义了,就可以调用pa 初始化 m_a.m_b了。
class A; //前置声明 A
class B //定义 B
{
public:
A *m_b;
void pb(void)};class A //定义 A
{
public:
B m_a;
void pa(void)
};void A::pa(void)
{
m_a.m_b=this;
}