首页| 论坛| 消息

标题:QT5新特性 中文版
作者:tudousi
日期:2012-08-31 15:14
内容:

注明:文章来源于http://www.devbean.info/2012/05/qt5-features/

Qt 5 已发布,其最大的特点就是模块化。将原来庞大的模块更细分为不同的部分,同时,一个大版本的升级,当然少不了添加、删除各个功能类。文本简单介绍 Qt5 的特性,其具体内容来自 Qt5 官方 Wiki 的介绍。
前面说过,Qt5 最大的特性在于模块化。这么多的模块,Qt5 统称为 Qt Essentials。下面就来看看这些模块究竟是什么吧!注意,有些模块没有在这里列出,例如 SQL 等。请在这里查看完整的 Qt5 模块列表。
Qt Core

Qt Core 类似于 Qt4 中的 QtCore 模块,包含了所有非 GUI 的功能。所有其他的 Qt 模块都基于这个模块。与 Qt4 的 QtCore 不同之处在于,Qt Core 还包括了 XML 等 Qt4 中存在的部分。
QStandardPaths

QStandardPaths 是 Qt4 的 QDesktopServices 的增强版,其 API 大部分基于 KDE4 的 KStandardDirs。这个类提供了比 QDesktopServices 更多的功能,例如在某一存储位置搜索给定文件等。
MimeTypes

QMimeDatabase 提供了判断给定文件或内存区块的 mimetype 的功能,原理是通过扩展名和(或)内容信息。
MIME 类型数据库由 freedesktop.org 的 shared-mime-info 项目提供。如果在当前系统上找不到 MIME 类型数据库(例如在大多数 Windows 或 Mac OS X 系统上),Qt 则使用自己的拷贝。
JSON 支持

QtCore 现在包含了一系列用于解析和生成 JSON 文档的类。这些类允许你在 JSON 的内存二进制表现形式和标准文本之间进行相互转换。这些类的目的当然就是提供 JSON 格式的支持。
编译器检查 signal-slot 连接

QObject 现在支持一种额外的语法,可以支持在编译期对信号槽的连接进行检查,比如 signal 和 接受者是否都存在、参数是否匹配等。目前我们使用 C++ 模板实现了这一功能,不过当 C++11 获得全面支持之后,使用 C++11 新特性更为方便。
这种新语法允许将一个信号连接到任意 C++ 接受者上,包括 C++11 lambda 表达式,成员函数以及 static 函数。这 ..


#1 [西瓜井 09-04 13:18]
学习了!
#2 [ka1980 09-15 23:10]
期待!!!!!!
#3 [passion_wu 09-16 00:44]
支持信号槽编译期检查错误,这一点很好。
#4 [g_tree 09-27 08:54]
蛋疼的是为什么没有加入加密解密库
#5 [moxiaomomo 01-11 10:21]
原来4.X中qml还不支持QList的类型注册的

回复 发表
主题 版块