QtCharts移植报错

2024-01-23 00:44
文章标签 移植 报错 qtcharts

本文主要是介绍QtCharts移植报错,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 目的
    • 解决方案

目的

由于在linux 实现了一套自定义BarChart, 它本身继承自QChart

class BarChart : public QChart
{Q_OBJECT
public:explicit BarChart(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = 0);~BarChart();
};

后来依据实际需要, 要将此项目移植到windows + vs2019 + Qt5.15.2下, 然后编译项目过程中就产生了如下问题。
在这里插入图片描述
在这里插入图片描述

缺少分号“;” 意外的分号“:”
“QtCharts::QtCharts::QtCharts::QtCharts::std::bad_weak_ptr::what”: 包含重写说明符“override”的方法没有重写任何基类方法
“QtCharts::QtCharts::QAbstractBarSeries”: 未定义基类

刚开始是有点懵逼, 寻思linux能编译过, QCharts编译本身就是跨平台兼容的, 不应该出错才对。

解决方案

#include <QtCharts/QtCharts>

求助 请问 VS2019配完了qt的库,只要include QtCharts还会报错可以怎么解决

#include <QtCharts>头文件报错

参考这两位博客, 此类问题最终就是没找到对应正确的QCharts。我们可以通过如下思路解决QCharts某种变化过程中导致问题。

  • pro 文件中加入 QT += charts (前提是你安装qt过程中安装的chart模块)
  • QT_CHARTS_USE_NAMESPACE 宏定义添加
  • #include <QtCharts/QtCharts> 头文件包含
  • #pragma comment(lib, “Qt5Charts.lib”)

我的最终版本解决就是添加此 。

#pragma comment(lib, "Qt5Charts.lib")

初步猜想可能是找到库位置不对, 导致release 版本下编译过程中, 找的qtchart不对。

#include <QObject>
#if unix
#include <QChart>
#else
#include <QtCharts/QtCharts>
#pragma comment(lib, "Qt5Charts.lib")
#endif#include <QtCharts/QChartGlobal>
#include <QtCharts/QBarSet>
#include <QtCharts/QAbstractAxis>
#include <QtCharts/QBarCategoryAxis>
#include <QtCharts/QValueAxis>
#include <QtCharts/QBarSeries>
#include <QtCharts/QSplineSeries>
#include <QtCharts/QChartView>QT_BEGIN_NAMESPACE
QT_CHARTS_USE_NAMESPACE
class BarChart : public QChart
{Q_OBJECT
public:explicit BarChart(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = 0);~BarChart();
};
QT_END_NAMESPACE

这篇关于QtCharts移植报错的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/634744

相关文章

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

VMWare报错“指定的文件不是虚拟磁盘“或“The file specified is not a virtual disk”问题

《VMWare报错“指定的文件不是虚拟磁盘“或“Thefilespecifiedisnotavirtualdisk”问题》文章描述了如何修复VMware虚拟机中出现的“指定的文件不是虚拟... 目录VMWare报错“指定的文件不是虚拟磁盘“或“The file specified is not a virt

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

PHP执行php.exe -v命令报错的解决方案

《PHP执行php.exe-v命令报错的解决方案》:本文主要介绍PHP执行php.exe-v命令报错的解决方案,文中通过图文讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录执行phpandroid.exe -v命令报错解决方案执行php.exe -v命令报错-PHP War

CentOS系统使用yum命令报错问题及解决

《CentOS系统使用yum命令报错问题及解决》文章主要讲述了在CentOS系统中使用yum命令时遇到的错误,并提供了个人解决方法,希望对大家有所帮助,并鼓励大家支持脚本之家... 目录Centos系统使用yum命令报错找到文件替换源文件为总结CentOS系统使用yum命令报错http://www.cppc

FreeRTOS-基本介绍和移植STM32

FreeRTOS-基本介绍和STM32移植 一、裸机开发和操作系统开发介绍二、任务调度和任务状态介绍2.1 任务调度2.1.1 抢占式调度2.1.2 时间片调度 2.2 任务状态 三、FreeRTOS源码和移植STM323.1 FreeRTOS源码3.2 FreeRTOS移植STM323.2.1 代码移植3.2.2 时钟中断配置 一、裸机开发和操作系统开发介绍 裸机:前后台系

Jenkins 插件 地址证书报错问题解决思路

问题提示摘要: SunCertPathBuilderException: unable to find valid certification path to requested target...... 网上很多的解决方式是更新站点的地址,我这里修改了一个日本的地址(清华镜像也好),其实发现是解决不了上述的报错问题的,其实,最终拉去插件的时候,会提示证书的问题,几经周折找到了其中一遍博文

【Python报错已解决】AttributeError: ‘list‘ object has no attribute ‘text‘

🎬 鸽芷咕:个人主页  🔥 个人专栏: 《C++干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法2.1 方法一:检查属性名2.2 步骤二:访问列表元素的属性 三、其他解决方法四、总结 前言 在Python编程中,属性错误(At

DBeaver 连接 MySQL 报错 Public Key Retrieval is not allowed

DBeaver 连接 MySQL 报错 Public Key Retrieval is not allowed 文章目录 DBeaver 连接 MySQL 报错 Public Key Retrieval is not allowed问题解决办法 问题 使用 DBeaver 连接 MySQL 数据库的时候, 一直报错下面的错误 Public Key Retrieval is

vue 父组件调用子组件的方法报错,“TypeError: Cannot read property ‘subDialogRef‘ of undefined“

vue 父组件调用子组件的方法报错,“TypeError: Cannot read property ‘subDialogRef’ of undefined” 最近用vue做的一个界面,引入了一个子组件,在父组件中调用子组件的方法时,报错提示: [Vue warn]: Error in v-on handler: “TypeError: Cannot read property ‘methods