有时候,明明已经包含了类的头文件,但是还是报错“has not been declared”或者“does not name a type”。
这个时候,需要对类进行前置声明。
有时候,我们对类进行了前置声明,对应的类也是完整的,但是还是报错“invalid use of incomplete type”。
这个时候,需要将类的头文件包含进来。
本人小白,遇到如上提到的三个错误中的任何一个时,习惯采用简单粗暴的解决方式:
同时包含类的头文件和对类进行前置声明。比如:
#include "Normal.h"
class Normal;