欢迎光临~湖南智能应用科技有限公司-hniat.com
语言选择: 中文版 ∷  英文版

基础知识

解决: error: Class declaration lacks Q_OBJECT macro. 的报错

1. 问题的引出
最近在练习信号和槽的知识,在学习的过程中,报了如下截图所示的错误:

根据报错可知:未添加 Q_OBJECT宏.

2. 问题的解决
只有加入了Q_OBJECT,你才能使用QT中的signal和slot机制。为了使用信号和槽,就必须继承Q_OBJECT.
凡是QObject类(不管是直接子类还是间接子类),都应该在第一行代码写上Q_OBJECT。不管是不是使用信号槽,都应该添加这个宏。这个宏的展开将为我们的类提供信号槽机制、国际化机制以及 Qt 提供的不基于 C++ RTTI 的反射能力。因此,如果你觉得你的类不需要使用信号槽,就不添加这个宏,就是错误的。其它很多操作都会依赖于这个宏。

————————————————
版权声明:本文为CSDN博主「shuxin7782」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/shuxin7782/article/details/113356706

联系我们

联系人:徐经理

手机:17807330718

电话:0731-22222718

邮箱:hniatcom@163.com

地址: 湖南省株洲市石峰区联诚路79号轨道智谷2号倒班房6楼603室

关闭
用手机扫描二维码关闭
二维码