D:\WORKSPACE\QT\QtDraw3DCtrl\qtdraw3dctrl.h:62: error: field 'ui' has incomplete type 'QtDraw3DCtrl' ..\QtDraw3DCtrl\qtdraw3dctrl.h:62:18: error: field 'ui' has incomplete type 'QtDraw3DCtrl' QtDraw3DCtrl ui; ^~ ..\QtDraw3DCtrl\qtdraw3dctrl.h:26:7: note: definition of 'class QtDraw3DCtrl' is not complete until the closing brace class QtDraw3DCtrl : public QGLWidget ^~~~~~~~~~~~
时间: 2024-02-23 20:00:34 浏览: 379
这个错误的原因是在头文件中使用了QtDraw3DCtrl类的实例ui,但是QtDraw3DCtrl类的定义不完整。最常见的情况是在头文件中使用了另一个头文件中的类,但是这个类的定义并没有包含在该头文件中。可以尝试在该头文件中添加一个前向声明,如下所示:
```c++
class QtDraw3DCtrl;
```
同时,确保在实现文件中包含QtDraw3DCtrl类的头文件。这样就可以避免这个问题。
阅读全文