Qt undefined reference to `vtable for xxx‘

一、问题背景

在编译QT代码时,出现 undefined reference to xxx::entered(),通过鼠标双击QtCreator“问题栏”中的该行,则会跳转到发送信号的代码所在行。与上述代码一同出现在“问题栏”的还有 undefined reference to `vtable for xxx’。

二、问题分析

qmake不会处理.cpp文件里的Q_OBJECT,所以,如果在.cpp文件中有它的话,也会产生undefined reference to vtable for “xxx::xxx”。这时需要先用 moc xxxx.cpp 生成相应的moc文件,再包含到.cpp里面去

三、解决方案

在.cpp文件最后加#include “moc_xxx.cpp”

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-01-05 12:56:06       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-05 12:56:06       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-05 12:56:06       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-05 12:56:06       20 阅读

热门阅读

  1. linux 环境下安装ffmpeg。

    2024-01-05 12:56:06       48 阅读
  2. HTTP与API接口详解

    2024-01-05 12:56:06       33 阅读
  3. 【react.js + hooks】useUrl 监听路由参数

    2024-01-05 12:56:06       38 阅读
  4. AWS ECS、EC2、EKS 和 Fargate 之间的关系

    2024-01-05 12:56:06       52 阅读
  5. selenium元素单击不稳定解决方法

    2024-01-05 12:56:06       40 阅读
  6. 技术人员可以成功转型项目经理和PMO吗?

    2024-01-05 12:56:06       36 阅读