解决: 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