QT QNetworkReply::finished 槽函数不执行

864 阅读1分钟

QT 不执行槽函数


                QNetworkAccessManager manager  ;
                QNetworkReply *reply = manager.get(QNetworkRequest(QUrl(url)));
                QObject:: connect(reply, &QNetworkReply::finished,[=](){});

原因 可能是函数执行完毕后 内存被释放 所以不执行槽函数。

解决方式 QNetworkAccessManager 用指针声明

            QNetworkAccessManager * manager  = new  QNetworkAccessManager(this);
            QNetworkReply *reply = manager->get(QNetworkRequest(QUrl(url)));
            QObject:: connect(reply, &QNetworkReply::finished,[=](){});