QT错误改正

本文讲述了在Qt编程中遇到的undefinedreferencetovtable错误,原因是子类未实现父类的纯虚函数。解决方法是在添加继承QObject和Q_OBJECT后,确保先执行qmake让moc预编译,再进行构造。作者分享了常见误区和解决步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.error: undefined reference to `vtable for
2、原因分析
导致错误信息的原因是:子类没有实现父类的纯虚函数;
在Qt中,首先要想到的是在一个类中添加了新的继承QObject,并添加了Q_OBJECT宏,然后执行构造或重新构造,都会造成这个错误。
根本原因是,只执行构造或重新构造,都不会编译新添加的宏Q_OBJECT。因此在这之前要执行qmake,让moc编译器去预编译Q_OBJECT,然后再执行构造,就不再报错了。
3、解决方法
首先重新执行qmake,然后再执行构造。
这个问题遇到好多次了,每次都会忘,然后瞎折腾—番,特此记录下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值