65,194
社区成员




#ifndef MNG_H
#define MNG_H
#include <QObject>
#include <QNetworkAccessManager>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <iostream>
#include <QThread>
using namespace std;
class Mng : public QThread
{
Q_OBJECT
public:
Mng();
~Mng();
virtual void run();
signals:
public slots:
void replyFinished(QNetworkReply*);
private:
QNetworkAccessManager *manager ;
QNetworkReply *reply;
QNetworkRequest *request ;
};
#endif // MNG_H
#include "mng.h"
Mng::Mng()
{
}
Mng::~Mng()
{
delete manager ;
delete reply;
delete request ;
}
void Mng::run()
{
manager = new QNetworkAccessManager(this);
request = new QNetworkRequest();
request->setUrl(QUrl("http://www.oschina.net"));
reply = manager->get(*request);
connect(manager,SIGNAL(finished(QNetworkReply*)),this,SLOT(replyFinished(QNetworkReply*)));
}
void Mng::replyFinished(QNetworkReply * reply)
{
QString html = reply->readAll();
cout<<html.toStdString()<<endl;
}
#include <QCoreApplication>
#include <QNetworkAccessManager>
#include <QNetworkRequest>
#include <QNetworkReply>
#include "mng.h"
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
Mng mng ;
mng.start();
return a.exec();
}
Mng::Mng()
{
manager = new QNetworkAccessManager(this);
request = new QNetworkRequest();
connect(manager,SIGNAL(finished(QNetworkReply*)),this,SLOT(replyFinished(QNetworkReply*)));
}
Mng::~Mng()
{
delete manager ;
delete reply;
delete request ;
}
void Mng::run()
{
request->setUrl(QUrl("http://www.oschina.net"));
reply = manager->get(*request);
}
这样么? 还是一样的报错结果。