Qt Core

Qt Core 模块向 C++ 添加以下功能

  • 一个非常强大的对象通信机制,称为信号和槽
  • 可查询和可设计的对象属性
  • 具有受保护指针(QPointer)的分层和可查询的对象树,能够自然地组织对象所有权
  • 支持跨库边界的动态类型转换

以下页面提供有关 Qt 核心功能的更多信息

使用模块

使用 Qt 模块的 C++ API 需要链接模块库,可以是直接链接或其他依赖项。包括 CMakeqmake 在内的几个构建工具都为此提供了专用支持。

使用 CMake 构建

使用 find_package() 命令在 Qt6 包中定位所需模块组件

find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)

有关更多详细信息,请参阅 使用 CMake 构建 概述。

使用 qmake 构建

如果您使用 qmake 来构建项目,则默认链接 Qt Core。

线程和并发编程

Qt 以平台无关的 线程类、线程安全的事件提交方式和线程之间的信号-槽连接的形式提供线程支持。多线程编程也是一种非常有用的范例,可以在不冻结应用程序用户界面的情况下执行耗时操作。

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

输入/输出、资源和容器

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

此外,Qt Core 还提供了一种平台无关的机制,用于在应用程序的可执行文件中存储二进制文件。

其他框架

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

参考

模块演变

Qt 核心变更列出了为 Qt 6 系列Qt 实现的模块 API 和功能的重要变更。

许可和归属

Qt 核心可在Qt 公司的商业许可下使用。此外,它还可用以下免费软件许可:GNU 较小通用公共许可证,版本 3,或 GNU 通用公共许可证,版本 2。有关更多信息,请参见Qt 许可

Windows 上的可执行文件可能会链接到QtEntryPoint 库。此库可在商业许可下使用,也可以在BSD 3-clause "New" 或 "Revised" 许可下使用。

此外,Qt 6.7.2 中的 Qt Core 可能包含以下宽限期许可的第三方模块

BLAKE2(参考实现),版本 54f4faa4c16ea34bcd59d16e8da46a64b259fc07

Creative Commons Zero v1.0 Universal 或 Apache 许可证 2.0

数据压缩库(zlib),版本 1.3.1

zlib 许可证

Robert Penner 的缓解方程

BSD 3-clause "New" 或 "Revised" 许可

用于 IEEE 双精度浮点数的有效二进制-十进制和十进制-二进制转换例程,版本 3.3.0

BSD 3-clause "New" 或 "Revised" 许可

KWin,版本 5.13.4

BSD-3-Clause

MD4

公共领域

MD5

公共领域

PCRE2 - 栈式即时编译器,版本 10.43

BSD 2-clause "Simplified" 许可证

PCRE2,版本 10.43

带有 PCRE2 二进制包例外条款的 BSD 3-clause "New" 或 "Revised" 许可证

macOS 上的 QEventDispatcher

BSD 3-clause "New" 或 "Revised" 许可

安全散列算法 SHA-1

公共领域

安全散列算法 SHA-3 - Keccak,版本 3.2

Creative Commons Zero v1.0 Universal

安全散列算法 SHA-3 - brg_endian,版本 https://github.com/BrianGladman/sha/ commit 4b9e13ead2c5b5e41ca27c65de4dd69ae0bac228

BSD 2-clause "Simplified" 许可证

安全散列算法 SHA-384 和 SHA-512

BSD 3-clause "New" 或 "Revised" 许可

SipHash 算法

Creative Commons Zero v1.0 Universal

TinyCBOR,版本 0.6.0

MIT 许可证

Unicode 字符数据库 (UCD),版本 30

Unicode 许可协议 - 数据文件和软件(2016)

Unicode 公共区域数据存储库(CLDR),版本 v44.1

Unicode 许可 v3

额外的 cmake 模块,版本 5.84.0

BSD-3-Clause

forkfd

MIT 许可证

© 2024 Qt 公司有限公司。本文件内包含的文档贡献归各自的拥有者版权所有。本文件提供的文档根据(a href="http://www.gnu.org/licenses/fdl.html">GNU 自由文档许可证版本 1.3的条款提供,由自由软件基金会发布。Qt 及各自的标志是全球芬兰和/或其他国家的商标。所有其他商标均为各自所有者的财产。