当类A作为类B的成员变量或输入参数时或函数体调用了A类的具体方法,也就是B必须知道A的布局时,在B的头文件中要包含A的头文件;
当类A仅作为B类的成员指针并且类A的方法并不需要调用A类的任何方法,也就是不透明指针,只需要在B类声明class A,不需要包含A的头文件。
尽量避免相互嵌套包含,特别是在大型软件中,使用设计模式打破循环嵌套。
转载于:https://www.cnblogs.com/sqzxcv/archive/2009/12/06/1617858.html