当前位置: 首页 > news >正文

厦门app网站建设自媒体服务平台

厦门app网站建设,自媒体服务平台,护肤品网站制作 网新科技,郑州做商城网站Qt框架的一个新的长期支持版本6.5最近发布。它为以前的版本引入了许多修复、改进和新功能。有些可能对您的应用程序有用(如果不是现在,可能会在将来),因此最好将应用程序迁移到最新版本的框架。 仍然有许多应用程序仍在使用Qt 5&…

Qt框架的一个新的长期支持版本6.5最近发布。它为以前的版本引入了许多修复、改进和新功能。有些可能对您的应用程序有用(如果不是现在,可能会在将来),因此最好将应用程序迁移到最新版本的框架。 

仍然有许多应用程序仍在使用Qt 5,因此直接迁移到最新版本的框架并不容易。在本文中主要指出从Qt 5顺利迁移到Qt 6的最关键步骤。

那么,为什么是Qt 6呢? 

  1. 改进了性能。Qt 6引入了一个新的渲染管线,可以提高性能并减少内存使用量,从而产生更快、响应更快的应用程序。
  2. 改进的 QML。QML 已得到增强,性能更好,改进了对将C++类导出到 QML 的支持,以及用于调试 QML 代码的更强大的工具。新的Qt快速编译器允许您预编译QML文件,以加快启动时间。
  3. 改进的模块。一些模块已被重写和改进,例如Qt Quick 3D,Qt Multimedia和Qt WebEngine。使用这些模块的最新版本将确保您的应用程序符合当前标准。
  4. 附加模块。许多模块将作为附加组件提供。它将使Qt二进制文件更小,并允许您仅在项目中需要时才下载模块。
  5. 统一后端。Qt 6提供了一个API来访问多个环境中特定于平台的功能。这包括图形、多媒体、输入和窗口系统。
  6. 长期支持。Qt 5已经到了它的生命周期,虽然某些旧版本仍然有安全和错误修复,但任何新的特性或功能都只能在Qt 6中使用。如果您不希望您的应用程序过时得太快,您应该进行迁移。

这些是确保使用最新版本的Qt 6使您的应用程序与最新功能保持同步的主要内容。应用程序的性能将比以前更好,并且将来维护应用程序将更容易。

迁移到Qt 6的路径 

第 1 步。QT 移植到 QT 5.15 

将应用程序移植到Qt 5的最新版本,然后切换到Qt 6要容易得多。这是因为Qt在6.5版本中只发布了简化迁移到Qt 5.15的机制。从Qt 5的先前版本迁移到最新版本的Qt 5应该很简单。

第 2 步。检查模块更改 

在Qt 6中,Qt 5中提供的某些模块不再可用。这些模块将被删除、重命名或合并到不同的模块中。在最新版本中,几个已删除的模块已经刷新并添加到框架中。

通过检查模块更改,可以确保应用程序在迁移后按预期工作。当模块不再存在时,关于如何表现的可能解决方案可能会有所不同。下面是几个已弃用模块的示例,以及如何更新使用它们的代码。

  • Qt 快速控制 1 → 使用新的 Qt 快速控制 2
  • Qt Multimedia Widgets → 使用 Qt Multimedia 的 QML API
  • Qt 图形效果 → 使用 Qt5Compat 模块(Qt Quick MultiEffect 从 Qt 6.5 开始)

因此,取决于需要替换的模块。删除模块和其他更改的完整列表可以在Qt文档中找到。

“是否需要检查文档中每个模块的更改?”

没必要。它可以帮助您找到已弃用API的正确替代品,但Qt creator工具可以提示不再受支持的代码的所有部分。请看步骤4.

第 3 步。QT移植:检查您的环境 

Qt 6需要C++17或更高版本的编译器(例如,对于Windows – MinGW 8.1.0或msvc 2019),因此如果您使用的是旧版本,则是时候升级了。Qt公司开发的工具也支持Qt 6,因为特定版本。对于Qt Creator,它是4.14,对于Qt Design Studio,它是2.0。

如果安装了正确的编译器和工具,则为 Qt 6 准备的应用程序应在移植后正确构建和运行。

第 4 步。执行移植到 QT 6 

摆脱已弃用的功能。 

在Qt 5.15中,Qt 6中不包含的所有内容都被标记为已弃用。默认情况下,此代码的使用将作为编译器警告弹出。但是也可以选择将其视为错误。

要确保这一点,需要定义它应设置为指定宏时,已弃用的功能(在给定版本的Qt或任何更早版本中)将被禁用。QT_DISABLE_DEPRECATED_BEFORE0x050F00

如果在生成过程中看到任何错误,则应重构该部分。

 

不带宏的输出。应用已正确构建。

使用宏输出。无法构建应用。 

运行冲突并摆脱这些警告。 

Clazy 是一个静态分析工具,可作为 QtCreator 中的插件使用。Clazy 可以分析代码并向您展示需要改进的地方。可以明确地告诉 Clazy 在执行过程中要检查什么。需要检查一些特殊选项,这些选项可以指向Qt 6中不支持的代码部分。Clazy 也能够自动修复这些警告。

在移植过程中有用的选项:

  • qt6-deprecated-api-fixes 
  • qt6-header-fixes 
  • qt6-qhash-signature 
  • qt6-fwd-fixes 
  • missing-qobject-macro 

 可以在首选项→分析器→Clang工具→诊断配置中更改延迟配置。

 在移植过程中有用的选项:

输出示例。

必要时使用 Qt5Compat 模块。 

在第2步中,提到了一个名为Qt5Compat模块?

引入该模块是为了更好的进行迁移和过渡。它提供了Qt 6中消失的一些类,例如QRegExp和QStringRef,但由于这一点,它仍然可以在Qt 6应用程序中使用。比如某些模块在Qt 6中消失了,但将在下一个版本中作为MultiEffect重新引入。因此,在此期间,可以暂时使用Qt5Compat模块来确保兼容性。但是当MultiEffect模块可用时,应该重写代码以切断过时的API。

如何将模块导入到项目中:

 头文件包含也需要更改:

最后,请做好相关测试。

http://www.dinnco.com/news/29495.html

相关文章:

  • 只让美国人做的调查网站百度关键词代做排名
  • 网站建设代码问卷调查百度图像搜索
  • wordpress 选择服务器搜索引擎优化的方式
  • 品牌型网站湖南网站设计
  • 签署网站建设协议新闻明星百度指数排名
  • 网站色彩运用新闻软文广告
  • 学校建设网站的结论互联网优化是什么意思
  • 杭州好的做网站公司seo流程
  • 公司网站建设的bt最佳磁力搜索引擎吧
  • 天猫网站是用什么技术做的专业搜索引擎seo公司
  • 58招聘运营网站怎么做一键优化清理加速
  • 做网站不备案用香港空间可以吗网页设计主题参考
  • 延庆网站建设师seo推广教学
  • 婚纱摄影的网站怎么做如何申请网站域名流程
  • 公司网站建设外包流程交换友情链接时需要注意的事项
  • 网站建设套餐报价成都百度推广代理公司
  • 自建网站管理盘多多搜索引擎入口
  • 网站开发java用户登录百度信息流广告怎么投放
  • 苏州专业做网站较好的公司app安装下载
  • 晋城市住房保障和城乡建设局网站免费的h5制作网站
  • 济南川芎网站建设公司品牌推广专员
  • 微信网站建设合同宣传渠道和宣传方式有哪些
  • 企业网站的建设公司企业网站制作公司
  • 有什么网站是可以做日语题seo提升关键词排名
  • 房地产集团网站模板百度搜索热度指数
  • 免费检测网站seo网络营销环境分析
  • dw手机网站建设网络营销与策划试题及答案
  • 做网站和推广公司邯郸网站seo
  • 网站可以建设时时彩吗希爱力双效片用后感受
  • 怎样让百度搜索到自己的网站今天新闻摘抄十条