问题描述:c++在使用过程中遇到两个类需要相互包含引用的问题
解决办法:两个类的头文件之中,选一个包含另一个类的头文件,另一个头文件中采用class ;的申明形式,在实现文件中(.cpp)中包含头文件,如下所示:
class A.h
#include "B.h"
class A
{
int m;
B b;
}
class B.h
class A;
class B
{
int n;
A *a;
}
B.cpp
//在B.cpp中的文件包含A.h,否则不能调用成员a的任何内容
#include "A.h"
B::B()
{
…
}