Qt信号和插槽错误:未定义的引用`vtable for function'

只有继承了QObject类或QObject的子类,才具有信号槽的能力。

class A: public QObject
{
    Q_OBJECT
public:
    A();
    virtual ~A();

signals:
    void Signal_Function();

public slots:
    void Slot_Function();
};

继承了QObject类或QObject的类,都应该在第一行代码写上Q_OBJECT。

如果你最开始没有加,编译后又加了,就会出现错

undefined reference to `vtable for A::Signal_Function'
undefined reference to `vtable for A::Slot_Function'

这个时候删除所有编译产生的文件,然后重新构建和编译(注意:只是点击重新构建按钮是不行的)

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章