翻译|使用教程|编辑:鲍佳佳|2020-11-27 14:33:28.027|阅读 34 次
概述:在Qt 5中,有些类别已经有现有的替代品,并且某些类别在Qt 6开发阶段得到了继任者。因此,能够同时使用旧的和新的Qt版本编译代码可能很有意义。这样可以确保将不使用任何版本的代码进行编译的工作量减至最少,从而使您的应用程序或库可以继续与Qt 5和Qt 6一起工作。另一个优点是,现有的单元测试对于大多数版本都可以继续工作。移植的持续时间以及移植代码所导致的回归与Qt 6中引入的错误很容易区分开。
# 周年庆正版采购有优惠,点击咨询 # # 31款JAVA开发必备控件和工具 #
Qt是一个跨平台框架,通常用作图形工具包,它不仅创建CLI应用程序中非常有用。而且它也可以在三种主要的台式机操作系统以及移动操作系统(如Symbian,Nokia Belle,Meego Harmattan,MeeGo或BB10)以及嵌入式设备,Android(Necessitas)和iOS的端口上运行。现在我们为你提供了免费的试用版。赶快点击下载Qt6最新试用版>>
从Qt 5移植到Qt 6的过程一直很容易。在Qt 6的整个开发过程中,一直有意识地努力保持与Qt 5的尽可能多的源兼容性。尽管如此,移植仍需要一些努力。这篇简短的文章总结了移植到Qt 6时所需的一些步骤。
工具推荐:
在Qt 5中,有些类别已经有现有的替代品,并且某些类别在Qt 6开发阶段得到了继任者。因此,能够同时使用旧的和新的Qt版本编译代码可能很有意义。这样可以确保将不使用任何版本的代码进行编译的工作量减至最少,从而使您的应用程序或库可以继续与Qt 5和Qt 6一起工作。另一个优点是,现有的单元测试对于大多数版本都可以继续工作。移植的持续时间以及移植代码所导致的回归与Qt 6中引入的错误很容易区分开。
种类
下表列出了在Qt 6中已删除但为了便于移植而保留在Qt5Compat中的类。它还包含将在Qt6中的新代码中使用的类。
Qt 5类 | Qt 6更换 |
QLinkedList |
std :: list * |
QRegExp | QRegularExpression |
QStringRef | QStringView |
QXmlSimpleReader | QXmlStreamReader |
QTextCodec | QStringConverter |
QTextEncoder | QStringEncoder |
QTextDecoder | QStringDecoder |
*如果不需要链接列表的引用稳定性,则也可以考虑使用QList。
调整构建系统如果要继续使用上述Qt 5类,首先需要调整您的构建系统以链接到新的Qt5Compat模块。对于qmake构建系统,将以下行添加到.pro文件中:
QT += core5compat
如果您已经将应用程序或库移植到了cmake构建系统,请将以下内容添加到您的 CMakeList.txt:
PUBLIC_LIBRARIES Qt::Core5Compat
修复包括
除了显然需要进行的构建系统更改外,您可能还需要修复前面提到的类的包含。您的实际代码可能如下所示:
#include <QtCore / QRegExp>
需要针对新的Qt5Compat模块进行更新:
#include <QtCore5Compat / QRegExp>
或使用更加简单和可移植的版本:
#include <QRegExp>
好了这就是今天的内容了,如果今天的文章未解决你的需求,可点击获取更多免费教程。不要忘了在评论与我们分享您的想法和建议。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果
文章转载自:the Qt Company好文不易,鼓励一下吧!
随着软件开发从Web应用程序扩展到工业物联网(IIoT)设备,为确保软件从头开始的功能安全性,静态应用程序安全性测试(SAST)变得越来越必要。根据Forrester Research的研究,Web攻击是2020年安全漏洞的主要来源。因此,IIoT和连接设备的扩展正在增加从医疗到汽车等各个行业中安全关键系统的攻击面。
在parasoft中,您可以设置导入参数,例如优先级和严重性级别,这些参数确定将哪些发现结果导入到IDE中。
流程图广泛用于可视化工作流程或过程。在这里,将展示如何在MS Excel中创建流程图,并提供一些Excel格式的可编辑流程图模板。
更改Win10系统的显示百分比后,LightingChart会产生最大化影响窗口的效果,本文介绍了LightingChart如何影响窗口最大化。
一个跨平台的C++图形用户界面应用程序开发框架。
微信扫码登录
福利更多、资源更多
官方微信
官方微博
重庆慧都科技有限公司 版权所有 Copyright 2003-2021 渝ICP备12000582号-13 渝公网安备 50010702500608号