修改代码时,原来的引用关系未删除,导致了两个类出现了交叉引用
#ifndef CLASSA
#define CLASSA
#include "classb.h"
class ClassA
{
funcA();
}
#endif
#ifndef CLASSB
#define CLASSB
#include "classa.h"
class ClassB
{
ClassA funcB();
}
#endif
编译时导致ClassB的定义在ClassA的定义前展开,而ClassB中又用到了ClassA,报错ClassA不是一个类型
出现类型不识别时应该根据错误提示的文件调用关系确认是否引用关系有问题,可更快找到问题