qt 中出现error: 'mywindow' does not name a type mywindow *cc; 怎么解决。

qt的环境为 5.11
我没有重复包含头文件,我就是想在线程类中获取主类中的成员。
看代码吧,请求大神的帮助。
这是有错误的那个源文件

图片说明

这个是头文件

图片说明

这个是线程函数的源文件,我的线程函数需要用到主源文件中的数据,就是线程类中需要引用主类中的数据。图片说明

这个是主函数
图片说明

在hdthread.h 文件头添加

class mywindow;

然后hdthread.cpp文件添加;

#include "mywindow.h"

还有

#ifndef HDTHREAD_H
#define HDTHREAD_H

#endif //HDTHREAD_H
这三行最好别注释掉
在 hdthread.h
HDThread(); 改成 HDThread(QWidget *wgt);

在hdthread.cpp
HDThread::HDThread()
{
    cc = new mywindow();
}
改成
HDThread::HDThread(QWidget *wgt)
{
    cc = dynamic_cast<mywindow *> (wgt);
}

在mywindow.cpp
thread = new HDThread();
改成
thread = new HDThread(this);

就可以了,这样,你在mywindow操作arr,也是对cc->arr的操作,
虽然不是最好的办法,但是比较简单易懂的方法。