比如想在类A中声明类B:
1.在A.cpp文件中用include包含B.h:include "B.h"
2.在A.h文件中声明class B (注意在写B的时候可能不会自动提示,大胆往上写就是了),并且在A.h中定义B类对象作为A的成员变量:B *m_B;
"class 类名" 只是声明存在这么一个类,但是通过这个声明无法得到任何关于此类的具体信息,这样你可以在其他使用到的地方声明一个该类型的指针。
include头文件则是将整个该头文件与使用到的地方关联起来。
这种方式可以避免当类A和类B互相调用时候产生死循环,并节约编译时间,因为A的头文件中只是使用了B的指针对象,此时并不需要展开类B。