Qt Core

核心功能

Qt Core 添加了这些特征到 C++:

  • 称为信号/槽非常强大的无缝对象通信机制
  • 可查询且可设计的对象特性
  • 分层 可查询对象组织树
  • 对象以自然方式拥有守卫指针所有权 ( QPointer )
  • 动态铸就工作跨库边界

以下页面提供了关于 Qt 核心特征的更多信息:

使用模块

使用 Qt 模块要求直接或透过其它依赖链接到模块库。一些构建工具为此有贡献支持,包括 CMake and qmake .

构建采用 CMake

使用 find_package() 命令去定位所需模块组件,在 Qt5 包:

find_package(Qt5 COMPONENTS Core REQUIRED)
target_link_libraries(mytarget Qt5::Core)
					

另请参阅 构建采用 CMake 概述。

采用 qmake 构建

若使用 qmake 来构建工程,默认链接 Qt5Core。

线程和并发编程

Qt 提供线程支持独立于平台形式 线程类 ,跨线程张贴事件和信号/槽连接的 Thread-Safety (线程安全) 方式。多线程编程也是履行耗时操作且不冻结应用程序用户界面的有用范式。

The Qt 中的线程支持 页面包含在应用程序中实现线程的有关信息。额外并发类的提供由 Qt Concurrent 模块。

输入/输出、资源及容器

Qt 提供组织应用程序文件和资产的资源系统、一组容器及接收输入 打印输出的类。

此外,Qt Core 提供在应用程序的可执行文件中存储二进制文件且独立于平台的机制。

附加框架

Qt Core 还提供了一些 Qt 关键框架。

许可和归属

Qt Core 在商业许可下是可用的来自 Qt 公司 。此外,它在自由软件许可下也是可用的。从 Qt 5.4 起,这些自由软件许可是 GNU LGPL (次一般公共许可) 第 3 版 ,或 GNU GPL (一般公共许可) 第 2 版 。见 Qt 许可 进一步了解细节。

Windows 可执行文件潜在链接到 qtmain 库 。此库可用于商业许可及 BSD 3 条款新 (或修订) 许可 .

Furthermore, Qt Core in Qt 5.12.12 may contain third party modules under following permissive licenses:

zlib (数据压缩库),第 1.2.11 版 zlib 许可
Robert Penner 缓和方程 BSD 3 条款新 (或修订) 许可
Efficient Binary-Decimal and Decimal-Binary Conversion Routines for IEEE Doubles, version 3.1.1 BSD 3 条款新 (或修订) 许可
FreeBSD strtoll 和 strtoull,版本 18b29f3fb8abee5d57ed8f4a44f806bec7e0eeff BSD 3 条款新 (或修订) 许可
MD4 公共领域
MD5 公共领域
PCRE2 - Stack-less Just-In-Time Compiler, version 10.33 BSD 2 条款简化许可
PCRE2, version 10.33 BSD 3 条款新 (或修订) 许可
QEventDispatcher 在 macOS BSD 3 条款新 (或修订) 许可
安全哈希算法 SHA-1 公共领域
安全哈希算法 SHA-3 - Keccak,第 3.2 版 创意公共零,第 1.0 通用版
安全哈希算法 SHA-3 - brg_endian,版本 https://github.com/BrianGladman/sha/ 提交 4b9e13ead2c5b5e41ca27c65de4dd69ae0bac228 BSD 2 条款简化许可
安全哈希算法 SHA-384 和 SHA-512 BSD 3 条款新 (或修订) 许可
文本编解码器:EUC-JP BSD 2 条款简化许可
文本编解码器:EUC-KR BSD 2 条款简化许可
文本编解码器:GBK BSD 2 条款简化许可
文本编解码器:ISO 2022-JP (JIS) BSD 2 条款简化许可
文本编解码器:Shift-JIS BSD 2 条款简化许可
文本编解码器:TSCII BSD 2 条款简化许可
文本编解码器:Big5、Big5-HKSCS BSD 2 条款简化许可
The Public Suffix List, version Generated on 2018-01-04 Mozilla 公共许可 2.0
TinyCBOR,第 0.6 版 + 补丁 MIT 许可
Unicode Character Database (UCD), version 20 Unicode 许可协议 - 数据文件和软件 (2016)
Unicode Common Locale Data Repository (CLDR), version v35.1 Unicode 许可协议 - 数据文件和软件 (2016)
forkfd MIT 许可

参考

这些是 API 参考材料链接。