错误如下,
解决这个错误花费了我一个小时,刚开始只看了红叹号对应的那句话,网上搜索找到的答案都不能实现,包括尝试过删除makefile,重新构建qmake。直到看到一个网友的评论,一语惊醒梦中人!要连着上一句来看:Class contains Q_OBJECT macro but does not inherit from QObject。这句话的意思是:类包含Q_OBJECT宏但是没有从QObject继承。
我的QObject是手动添加的,代码如下:
#include <QObjet>
class manage{
QOBJECT
......
我以为要继承是引入头文件即可(本人菜鸟,刚开始学,懂得很少)。
代码正确写法如下:
#include <QObject>
class manage:public QObject
{
Q_OBJECT
....
需要在class之后加:public QObject 才能继承!
(我的代码不包含UI界面)
(注意:如果是新建的.cpp和.h文件,想使用信号与槽,则必须添加QOBJECT,否则会出现错误:Class declaration lacks Q_OBJECT macro.