在QT中编写代码时出现以下问题:
error: undefined reference to `vtable for MyButton’
可能原因有:
1,基类中的虚函数未实现
2,该类原来没有添加Q_OBJECT,则在程序输出目录中由qmake生成的makefile文件里不存在编译Q_OBJECT的信息,因此信号/槽机制失效。而在该类加上Q_OBJECT后,QtCreator没有自动执行qmake来更新makefile文件,这时就会在link时有上述错误。
3,基类中定义虚函数时在末尾加上=0.
2021-08-11
本文介绍了在QT编程中遇到的链接错误'undefined reference to `vtable for MyButton''的可能原因,包括基类虚函数未实现、Q_OBJECT宏缺失导致的信号/槽机制失效以及基类虚函数声明不完整。解决这个问题需要检查并确保正确实现虚函数,使用Q_OBJECT宏,并在必要时执行qmake更新编译信息。
摘要由CSDN通过智能技术生成