皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Qt 6.7发布

Qt 6.7 已经发布,它为我们这些喜欢在构建现代应用程序和用户体验时享受乐趣的人带来了许多大大小小的改进。

有几项新增功能以技术预览版的形式发布,我们期待您的反馈意见,以便为下一个 LTS 版本做好一切准备!

在此查看重点内容:
在 Qt 中使用 C++20
对于许多编译器工具链来说,C++20 仍然是可选的实验性标准,目前我们认为没有理由要求使用 C++20 来构建或使用 Qt。不过,我们希望用户能在自己的代码中尽可能多地使用新标准。C++17 和 C++20 之间的一些变化可能需要对现有代码进行调整,而这些调整需要在 Qt 中进行。在 Qt 6.7 中,我们继续进行调整,使 Qt 感觉像是现代 C++ 栈的自然组成部分。

C++20 语言的一个有益补充是三向比较运算符<=>(),也称为 “飞船 “运算符。在实现该操作符时,类型需要指定其排序类别。在 Qt 6.7 中,我们添加了 Qt::{strong,weak,partial}_ordering 类作为各自 std::*_ordering 类型的 C++17 兼容实现。对于类型作者,Qt 6.7 提供了可用于实现关系运算符的辅助宏。在 C++20 版本中,这些宏将扩展为 operator<=>(),而在 C++17 版本中,它们将退回到所有六个运算符。

在 C++20 标准库中,std::span 是一个非常有用的新增库,我们希望自己使用它,同时也提供给 Qt 用户。作为连续序列对象的非所有表示,span 在构造和通过函数调用传递时都很便宜,有了 QSpan,我们现在就有了这种类型的 C++17 实现。

我们还继续为相关的 Qt 应用程序接口添加 std::chrono 支持。Qt 网络 API 中的传输超时现在可以指定为 std::chrono 类型和字面形式,例如 5s 表示 5 秒。

支持 2D 和 3D 可视化的 Qt Graphs
在 Qt 6.6 中,我们推出了 Qt Graphs 的首个技术预览版,这是一个现代 Qt 6 框架,用于在硬件加速渲染架构之上实现数据可视化。

在 Qt 6.7 中,除了自 Qt 6.6 起就已提供的三维可视化之外,我们还增加了对二维条形图、线形图和散点图的支持。该模块与 Qt Quick 动画和特效集成,并提供主题和基于处理程序的交互 API。

Qt 6.7发布

Qt Graphs 仍在积极开发中,并将继续作为此版本的技术预览版。我们对数据 API 和架构进行了一些实质性改进,以减少内存分配量,并与 Qt 的抽象项模型保持一致。我们希望在 Qt 6.8 LTS 技术预览版发布之前,能在架构和 API 方面进行更多改进,并期待听到您的使用案例和愿望,以确保我们能以最佳方式满足您的需求。

连接性、协议和分布式架构
通过引入 QHttpHeaders、QRestAccessManager 和 QRestReply 作为 REST 特定用例的新类,分布式系统的开发人员现在可以更高效地使用 HTTP 和 REST API。

Qt gRPC 引入了用于客户端、服务器或双向流调用的新类,允许在值变化时自动触发无缝消息传递。新的拦截器应用程序接口(Interceptor API)可以为选定的 gRPC 消息添加回调函数,例如实现缓存或日志记录。有了 Qt 6.7 中的 Qt Protobuf,开发人员现在可以将 Protobuf 消息序列化为 JSON 格式或从 JSON 格式中序列化 Protobuf 消息,并从支持可选字段和保留枚举值大小写的生成器改进中受益。

这些新功能使开发人员能更轻松地使用 Qt 构建稳健、可扩展的应用程序。当完成对 HTTP/2 的支持后,Qt gRPC 和 Qt Protobuf 将在 Qt 6.8 版本中脱离技术预览版。

更多 Qt 6.7 Released!