• 支持C++17标准。Qt6要求使用兼容C++14标准的编译器,以便使用一些C++语言的新特性。

  • Qt核心库的改动。设计了新的属性和绑定系统;字符串全面支持Unicode;修改了QList类的实现方式,将QVector类和QList类统一为QList类;QMetaType和QVariant是Qt元对象系统的基础,这两个类在Qt6中几乎被完全改写。

  • 新的图形架构。Qt5中的3D图形API依赖OpenGL,但是现在的技术环境发生了很大的变化。在Linux平台上,Vulkan逐渐取代了OpenGL,苹果公司主推其Metal,Microsoft公司则使用Direct3D。为了使用不同平台上的3D技术,Qt6中设计了3D图形的渲染硬件接口(rendering hardware interface,RHI)。RHI是3D图形系统的一个抽象层,使得Qt可以使用平台本地化的3D图形API。

  • CMake构建系统。Qt6支持CMake构建系统,并且建议新的项目使用CMake,Qt6本身就是用CMake构建的。