defe_feath

error: invalid use of incomplete type

一.

首先,要确定自己定义的类是完整的,构造函数,析构函数都有,函数的声明及定义分开在.h和.cpp中实现。

如果确定类是完整的,仍然出现error: invalid use of incomplete type的报错,那么问题出现在该类的使用上,而不是类的实现上.

二.

在使用某个已经实现的类时:

  如果只是定义某个类的指针,可以使用class关键字先进行声明,而不需包含头文件;

  但如果涉及到定义某个类的对象或是引用类的某个具体成员时,则必须包含该类的头文件,并且不要加class关键字进行声明。

否则,将会出现标题所示编译错误!

经过以上操作基本可以解决该bug.