Qt 不同版本差异

Qt 4:
(1)界面相关类位于QtGui中;
(2)使用GPL与商业协议;

Qt 5:
(1)对QtGui模块进行了重大调整,界面相关类被转移至该新增的QtWidgets模块中,打印相关类转移至Qt PrintSupport模块中;

greaterThan(QT_MAJOR_VERSION, 4):QT += widgets

(2)QtCore调整,比如信号与槽书写格式调整,支持编译器检查;

connect(sender, SINGAL(valueChanged(QString, QString)), receiver, SLOT(showValue(QString))); // Qt 4
connect(sender, &Sender::valueChanged, receiver, &Receiver::showValue); // Qt 5

(3)支持C++11;
(4)内置JSON解析功能;
(5)对模块进行了更精细的划分,分为基础模块和扩展模块(Add-ons);
(6)Qt 5.4 版本开始采用GPL/LGPL与商业协议;

CONFIG  +=  c++11

Qt 6:
(1)下一代QML;
(2)下一代图形;
(3)统一工具库;
(4)C++API增强;
(5)新语言支持,支持WebAssembly;
(6)兼容并改进Qt 5;

Qt 版本选择建议:
建议使用Qt 5(比如Qt 5.14)。因为Qt 4比较老旧,模块化比较粗糙;Qt 6太新不够成熟,而且目前很多Qt 5中的模块被去掉了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 15.4 普通 Qt 课程 QObject 类构成了 Qt 的基础,但框架中还有更多的类。在我们继续关注 QML ...
    赵者也阅读 1,463评论 0 3
  • PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成。PyQt5本...
    还是那个没头脑阅读 1,589评论 0 0
  • Python 与 Qt 搭配为开发 GUI 提供了极大的便利。本教程提供了 Qt5(PyQt5 与 PySide2...
    水之心阅读 4,204评论 0 10
  • 英文参考文档中文参考文档 简介 PyQt5是什么 Qt是一组跨平台的c++库,实现了访问现代桌面和移动系统许多方面...
    swallowsonny阅读 16,373评论 0 7
  • QtCore 本模块中包含了非GUI的功能设计。此模块被用来实现时间、文件、目录,不同数据类型、流、URL、mim...
    amor_2018阅读 217评论 0 1