首页 > 其他分享 >undefined reference to vtable for "xxx::xxx" in QT(已解决)

undefined reference to vtable for "xxx::xxx" in QT(已解决)

时间:2023-02-11 16:24:56浏览次数:41  
标签:PS vtable undefined reference xxx 编译

PS:要转载请注明出处,本人版权所有。

PS: 这个只是基于《我自己》的理解,

如果和你的原则及想法相冲突,请谅解,勿喷。

前置说明

  本文发布于 2015-02-09 15:37:25,现用MarkDown+图床做备份更新。blog原图已从CSDN图片服务器下载。(BlogID=012)

环境说明

  无

前言


  无





问题解决方法


  近日编译一个项目时,由于在错误状态下不小心编译一次了.当改了代码后(确认代码正确),在进行编译的时候,就会出现undefined reference to vtable for "xxx::xxx" .

  看到这个错误,别慌,他不是一个语言级的错误,而是qt的编译机制引起的.首先,看你的程序中是不是有qt的不同于c++的特性(一般来说就是有没有Q_OBJECT的宏定义).如果没有,就按照标准的C++规则编译,如果有,那么那个部分就会先被生成一个.把标准的.cpp文件(并不替换原来的cpp,而是参与编译).然后在进行标准c++的编译工作.其实就是这个部分引起的错误.而这个部分也叫做元对象编译(MOC).

  解决办法:删除build文件夹,切记删除整个文件夹.(这貌似是qt的一个bug,因为我全部重新编译,清除所有文件后在重新编译都是一样的错误)





后记


  无

参考文献

  无




打赏、订阅、收藏、丢香蕉、硬币,请关注公众号(攻城狮的搬砖之路)
qrc_img

PS: 请尊重原创,不喜勿喷。

PS: 要转载请注明出处,本人版权所有。

PS: 有问题请留言,看到后我会第一时间回复。

标签:PS,vtable,undefined,reference,xxx,编译
From: https://www.cnblogs.com/Iflyinsky/p/17111885.html

相关文章