QT 中 其他类的信号发射到UI主线程出现“ undefined reference”错误
class loadkeyServer
{ public:
loadkeyServer();
....................
signals: void updateMsgSignal(QString Msg);
}
首先这个代码定义了信号,但是并没有使用Q_OBJECT这个宏。
因为如果你代码有这个宏,Qt是要在编译之前先额外处理一下,就是生成的MOC_xxxx.cpp这种东西。实际上,信号的实现应该在那里。如果你没有这个处理的话,没有这个文件,信号的函数自然是未定义的。
使用QT create 重新定义类,继承QObject, 自动生成类构造函数跟Q_OBJECT这个宏
class loadkeyServer : public QObject{
Q_OBJECT
public:
explicit loadkeyServer(QObject *parent = 0);
....................
signals: void updateMsgSignal(QString Msg);
}
注:
explicit主要用于 "修饰 "构造函数.指明构造函数只能显示使用,目的是为了防止不必要的隐式转化.
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。