A.h中
#include"B.h"
class CA
{
CB* m_pb;
};
A.cpp中
#include"A.H"
#include"B.H"
B.h中
#include"A.h"
class CB
{
CA* m_pa;
};
B.cpp中
#include"B.H"
#include"A.H"
出现了这样的情况编译器就会发出错误。提示各种奇怪的错误。
解决这种情况C++有专门的方法,那就是
前置声明(forward declaration) 。就是先引入类名不定义实体。具体解决方法如下