Qt4和Qt5的区别
之前有做过将项目从QT4迁移到QT5的操作,所以写了一篇QT4和Qt5的区别。在最近这一年接触过Qt6后,所以想要介绍一下Qt6和Qt5的区别,通过自己的试用感受和结合网上各路大佬的点拨,有了一个大概的了解。
各稳定版本:
各版本介绍:
区别
1、Qt6上使用cmake进行项目构建更加的方便,原因就是Qt6的框架就是通过cmake来构建的,针对cmake构建项目做了一定的优化。当然qmake也同样支持。
2、Qt6默认支持C++17,在Qt5上默认支持的是C++14和C++11,当然如果想要Qt5也支持C++17,可以在Pro文件中将CONFIG += C++14改为17。
3、QML性能和丰富度上得到的较大的提升。
4、Linux上OpenGL的指定继承者Vulkan,Apple正在推动的Metal等图像接口的发展,Qt5依赖OpenGL已经不够用,现在,Qt 6 加入了大量不同平台的图形 API(OpenGL、Metal、Vulcan 和、Direct3D),以确保用户可以在所有平台上以最高性能运行 Qt。
5、Qt Quick 统一 2D 和 3D。将2D和3D内容合并到一个堆栈中。
6、浏览器内核进行了更新,对网页端(QWeb模块)进行了优化,取消掉了默认缓存页,改成了无痕浏览。
7、对一些数据结构如QList,QVecter,QMap,QHash的接口进行的取消,如指定删除的接口。
8、QNetworkAccessManager 默认启用 HTTP/2 协议。
9、QNetworkInformation ,引入新属性 BehindCaptivePortal,可用于查看用户是否连接到
具有强制网络门户的网络。