将抽象类的纯虚拟SIGNAL连接到构造函数的SLOT

时间:2015-06-26 16:28:03

标签: c++ qt inheritance multiple-inheritance signals-slots

我有一个抽象类,它包含纯虚拟信号和从qobject派生的类。现在我想将该信号连接到派生类 插槽。请注意以下代码:

msys.h

class MSys : public QObject
{
    Q_OBJECT
public:
    explicit MSys(QObject *parent = 0) : QObject(parent) {}
    virtual ~MSys() {}

public slots:
    void onRequset();
};

absview.h

class AbsView
{
protected:
    AbsView() : m_sys(new MSys)
    {
        // QObject::connect(this, SIGNAL(request()), m_sys, SLOT(onRequset()));
        /* What can I do here !? */
    }

public:
    virtual ~AbsView() {}

signals:
    virtual void request() = 0;

private:
    MSys *m_sys;
};

Q_DECLARE_INTERFACE(AbsView, "AbsView")

感谢您的时间。

编辑:我的问题刚刚被标记为重复,与问题为" Declare abstract signal in interface class"。但我认为我的问题清楚地表明 连接 抽象信号到插槽。

0 个答案:

没有答案