Qt下Undefined reference to 'vtable for xxx'
生活随笔
收集整理的这篇文章主要介绍了
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'的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 《数字图像处理(第三版)》 第一章 绪论
- 下一篇: quartus||仿真图