Привет всем. Недавно столкнулся с проблемой, хотел написать класс загрузчика, но единственной проблемой оказалась привязка сигналов QNetworkReply к кастомному классу ( CDownloader ) который наследован от QObject (иначе не коннектится вообще)
//эта ф-я в классе CDownloader
QNetworkReply *reply = manager.get(QNetworkRequest(QUrl(address)));
reply->connect(reply, SIGNAL(finished()),this, SLOT(getReplyFinished()));
reply->connect(reply, SIGNAL(readyRead()), this, SLOT(readyReadReply()));
Вот объявление класса:
class CDownLoader : public QObject
{
public:
CDownLoader(QObject *parent);
void GetBuffer(QString );
private:
QNetworkAccessManager manager;
QNetworkReply *reply;
public slots:
void getReplyFinished();
void readyReadReply();
};
Но я получаю ошибку во время выполнения программы:
Object::connect: No such slot QObject::getReplyFinished()
Object::connect: No such slot QObject::readyReadReply()
А если не наследовать CDownloader от QObject то не коннектится вообще(ошибка компиляции):
ошибка: no matching function for call to 'QNetworkReply::connect(QNetworkReply*&, const char [12], CDownLoader* const, const char [20])'
↧