Qt-Q_OBJECT宏使用与“无法解析的外部符号qt_metacall/metaObject/qt_metacast“

有时候我们编写Qt类的时候,修改代码时直接加上Q_OBJECT宏,然后直接构建,会报如下错误:

这里的几个函数的声明是由Q_OBJECT宏引入的,而其对应的实现是由moc实现的,如果我们更新了代码但是没有执行qmake,moc可能就无法识别到这个宏从而无法帮助我们生成moc文件,qtcreator中右键项目点击执行qmake再生成即可,或者直接点击重新构建即可。

一般来说Qt强烈建议继承QObject的子类都加上Q_OBJECT宏

相关推荐
张小姐的猫几秒前
【Linux】多线程 —— 线程池 | 单例模式 | 常见锁
linux·运维·服务器·c++·单例模式·设计模式·策略模式
无限进步_2 分钟前
【Linux】进程状态、僵尸与孤儿、进程调度
linux·运维·服务器·开发语言·数据结构·算法
郝学胜-神的一滴3 分钟前
力扣 662 :二叉树最大宽度
java·数据结构·c++·python·算法·leetcode·职场和发展
仙俊红4 分钟前
反射到底解决什么问题?
java·开发语言
大阳1236 分钟前
ARM.9(RGBLCD,PWM)
c语言·开发语言·汇编·单片机·嵌入式硬件·pwm·rgblcd
加油码11 分钟前
Linux IO 多路转接详解:从 select、poll 到 epoll
linux·c++
珊瑚里的鱼14 分钟前
C++14 和 C++17 的核心新特性
开发语言·c++
techdashen16 分钟前
深入理解 Rust Futures:从零开始,一头扎到底
开发语言·后端·rust
小欣加油17 分钟前
leetcode169 多数元素
数据结构·c++·算法·leetcode·职场和发展
程序猿乐锅22 分钟前
【JAVASE | 第十六篇】多线程
java·开发语言