【发布时间】:2023-04-02 14:25:01
【问题描述】:
我在主类中声明了一个名为 download_webm 的指针,我想在我的线程构造函数中对其进行初始化,但是每次我尝试这样做时,当我尝试连接下载 WebM 和播放器时程序都会崩溃。
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
int x;
DownloadWebm *download_webm;
MyThread *DownloadWebm_Thread = new MyThread(download_webm);
DownloadWebm_Thread->start();
LinuWebmPlayer *player = new LinuWebmPlayer(argv[1],0);
QObject::connect(download_webm,SIGNAL(send_packege(Video_Bytes_Package)),player,SLOT(play()));
player->show();
return app.exec();
}
这是我的线程标题:
#ifndef MYTHREAD_H
#define MYTHREAD_H
#include <qthread.h>
#include <downloadwebm.h>
class MyThread : public QThread
{
Q_OBJECT
public:
MyThread(DownloadWebm *);
MyThread();
protected:
DownloadWebm **webm;
void run();
};
#endif // MYTHREAD_H
和 CPP :
#include "mythread.h"
MyThread::MyThread()
{
}
MyThread::MyThread(DownloadWebm* we)
{
webm = &we;
}
void MyThread::run()
{
*webm = new DownloadWebm("http://trilulilu.de/recstreamingsource?movie=3860","asd");
}
主类认为 download_webm 指针未初始化!
【问题讨论】:
-
为什么是双指针?
-
因为我想让webm指向download_webm指针,并在run函数中初始化download_webm