QtVisualStudio生成moc文件-创新互联

文章目录
  • 背景
  • 原因
  • 解决方法一:
  • 解决方法二:

创新互联专业提供移动服务器托管服务,为用户提供五星数据中心、电信、双线接入解决方案,用户可自行在线购买移动服务器托管服务,并享受7*24小时金牌售后服务。背景
  1. Qt Creator转Visual Studio工程。
  2. 当添加一个新的类时, 且继承自QObject时, 回出现编译报错:
无法解析的外部符号:qt_metacall metaObject(void) const qt_metacast
原因

这是因为在此程序中使用了Q_OBJECT宏,这个宏是Qt对C++的扩展。需要要先使用Qt提供的moc程序生成moc文件,然后再用C++编译器编译此文件,才能正常链接

解决方法一:

在Visual Studio中对头文件使用自定义的生成命令
在这里插入图片描述

属性内容必须
命令行C:\Qt\5.15.2\msvc2019_64\bin\moc.exe “%(FullPath)” -o “moc_%(Filename).cpp”Y
说明optionalN
输出moc_%(Filename).cppY
向项类型添加输出C/C++ 编译器Y

编译后会自动生成相关的moc_xxx.cpp文件。

解决方法二:

使用moc.exe 命令行的方式手动转换

C:\Qt\5.15.2\msvc2019_64\bin>moc.exe  "xxx.h" -o "moc_xxx.cpp"

但是这一步操作没有成功。如果需要转换的文件大, 可以写成脚本,批量的转换。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


文章名称:QtVisualStudio生成moc文件-创新互联
网站链接:http://bzwzjz.com/article/dpejoo.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 企业网站建设 定制网站设计 成都网站建设 LED网站设计方案 四川成都网站制作 定制网站设计 网站制作公司 网站建设方案 成都网站设计 成都网站设计 定制网站制作 网站建设公司 网站建设方案 企业网站建设 成都网站建设 手机网站建设 成都网站建设 成都网站建设 重庆企业网站建设 自适应网站建设 成都网站设计 成都h5网站建设