欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Qt下Undefined reference to 'vtable for xxx'

发布时间:2023/12/9 编程问答 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Qt下Undefined reference to 'vtable for xxx' 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

QT下遇到这种错误提示时候需要注意以下情况:

一、cpp文件里使用了Q_OBJECT

分析:qmake不会处理.cpp文件里的Q_OBJECT,所以如果在.cpp文件中有它的话将会产生undefined reference to vtable for "xxx::xxx"。 


方法1:先用moc xxxx.cpp生成相应的moc文件,再包含到.cpp里面去。

方法2:由于前面生成的Makefile时包含这个类的头文件并没有Q_OBJECT所以在相应的Makefile里面并没有用moc xxx.h命令最终导致链接失败,此时尝试重新运行qmake

方法3:将包含Q_OBJECT的类声明放到 .h 头文件中,一般程序设计最好也这样做,类型定义放到头文件去做。


总结

以上是生活随笔为你收集整理的Qt下Undefined reference to 'vtable for xxx'的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。