我在Qt Creator中对一个程序不断进行修改进行实验,一个类需要使用信号槽。
于是,我将其继承于QObject:
class MyClass : public QObject
{
Q_OBJECT
public:
MyClass();
...
}
此时构建出错了:error: undefined reference to `vtable for MyClass'
将Q_OBJECT注释掉就可以了~
但是,我需要使用信号槽能力,Q_OBJECT是必需的。
解决办法:保留Q_OBJECT
右键工程,弹出菜单,分别执行1、2、3
原因是之前构建的工程有缓存,没有清除掉旧的信息,彻底弄干净再来构建。
来源:oschina
链接:https://my.oschina.net/u/4364002/blog/4267153