小编Bar*_*zar的帖子

QEventLoop正确用法

我怀疑应该如何使用QEventLoop.我有两段代码,它们都适合我(获取Web资源下载).

第一:

QNetworkAccessManager *manager = new QNetworkAccessManager( this );
QNetworkRequest request;
request.setUrl(QUrl(url));
request.setRawHeader("User-Agent", "Mozilla Firefox");
connect(manager, SIGNAL(finished(QNetworkReply*)),this,SLOT(replyFinished(QNetworkReply*)));
manager->get( request )  ;

QEventLoop loop;
connect(manager, SIGNAL(finished(QNetworkReply*)),&loop, SLOT(quit()));
loop.exec();
Run Code Online (Sandbox Code Playgroud)

第二个:

QNetworkAccessManager *manager = new QNetworkAccessManager( this );
QNetworkRequest request;
request.setUrl(QUrl(url));
request.setRawHeader("User-Agent", "Mozilla Firefox");
manager->get( request )  ;

QEventLoop loop;
connect(manager, SIGNAL(finished(QNetworkReply*)),this, SLOT(replyFinished(QNetworkReply*)));
loop.exec();
Run Code Online (Sandbox Code Playgroud)

我想知道的是我应该使用哪一个.我的意思是,在信号被激活后,事件循环是否在第二个中退出?或者我必须quit()像第一个一样打电话?我在某个地方找到了第二个解决方案,但它对我来说似乎不合适所以我将其修改为第一段代码.

qt qeventloop qtnetwork

8
推荐指数
1
解决办法
1万
查看次数

如何删除shared_ptr内容并将其替换为新对象?

我想知道是否有一种方法可以删除shared_ptr持有的对象并创建一个新对象,以便该shared_ptr的所有其他副本仍然有效并指向该对象?

c++ c++11

6
推荐指数
1
解决办法
3813
查看次数

使用数组和一些方法memcpy struct是否安全?

我想知道在包含数组和方法的结构上使用memcpy是否安全(只是一些getter和setter,因为数组的索引是不寻常的,我必须以某种方式映射它).我知道它对POD是安全的,我不确定我的结构是否会被认为是POD?

c++ arrays struct

5
推荐指数
1
解决办法
347
查看次数

标签 统计

c++ ×2

arrays ×1

c++11 ×1

qeventloop ×1

qt ×1

qtnetwork ×1

struct ×1