Qt中关于undefined reference to `vtable for classname`的问题

时间:2022-10-01 05:34:04
转自:http://blog.csdn.net/qian_f/article/details/8498747


在Qt中自定义了类classname,想要使用Qt自带的信号与槽机制,所以必须要将classname继承于QObject。
class classname : public QObject
{
       Q_OBJECT
public:
       .......
}
修改之后保存,就出现了undefined reference to `vtable for classname`的报错。

网上找了相关资料得知原因在于:因为qmake生成Makefile的时候,这个类的头文件中并没有Q_OBJECT,最终导致链接失败。
解决方法:重新运行qmake(右击项目名称,点击“执行qmake”)即可。