Есть метод:
QNetworkReply* QVkApi::request(QString method, QVariantMap args)
{
QString req ="https://api.vk.com/method/";
req+=method+"?";
for(auto arg = args.begin(); arg != args.end();arg++){
req += "&"+arg.key()+"="+arg.value().toString();
}
req += "&access_token=" + token + "&v=5.53";
QNetworkRequest reques(req);
QNetworkReply* reply = _accessManager->get(reques);
connect(reply, &QNetworkReply::finished,this, &QVkApi::onReply);
return reply;
}
Далее в классе User он вызывается и соединяется со слотом
User::User(int id, QObject *parent) : AbstractEntity(id,parent)
{
QVariantMap args;
args["fields"] = "photo_50,city,verified";
args["name_case"] = "Nom";
reply = api->request("users.get", args);
connect(reply, &QNetworkReply::finished, this, &User::onUpdate);
}
Но в классе User не вызывается связанный с ним слот(если прочитать QNetworkReaply после связывания то он пустой), хотя в классе QVkApi все прекрасно соединяется и работает.
заголовки классов:
user.h#ifndef USER_H
#define USER_H
#include "abstractentity.h"
class User : public AbstractEntity
{
Q_OBJECT
public:
explicit User(int id, QObject *parent = 0);
signals:
public slots:
void onUpdate();
};
#endif // USER_H
abstractentity.h#ifndef ABSTRACTENTITY_H
#define ABSTRACTENTITY_H
#include <QObject>
#include <QNetworkReply>
#include "qvkapi.h"
class AbstractEntity : public QObject
{
public:
explicit AbstractEntity(int id, QObject *parent = 0);
int id;
QNetworkReply* reply;
protected:
QVkApi* api;
};
#endif // ABSTRACTENTITY_H
Почему не связывается сигнал со слотом в классе User?
Прошу помочь решить проблему или объясните пожалуйста где я туплю.
Заранее благодарен.