Qt Core
Qt Core 模块为 C++ 添加了这些功能:
- 一种非常强大的无缝对象通信机制,称为信号和槽
- 可查询和可设计的对象属性
- 分层和可查询的对象树,它以一种自然的方式组织对象所有权,并使用受保护的指针 (QPointer)
- 可跨库边界工作的动态铸造
以下页面提供了有关 Qt Core 核心功能的更多信息:
使用模块
使用 Qt 模块的 C++ API 需要直接或通过其他依赖关系与模块库链接。有几种构建工具为此提供了专门支持,包括CMake和qmake。
使用 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 的关键框架。
参考资料
模块演变
Changes toQt Core列出了 Qt 6 系列 Qt 在模块 API 和功能方面的重要变化。
许可证和归属
Qt Core Qt 6 是根据Qt 公司的商业许可提供的。此外,它还可在自由软件许可证下使用:GNU 宽通用公共许可证第 3 版或GNU 通用公共许可证第 2 版。更多详情,请参阅Qt 许可。
Windows 上的可执行文件可能会链接QtEntryPoint 库。该库可根据商业许可证使用,也可根据BSD 3 条款 "新 "或 "修订 "许可证使用。
此外,Qt 6.9.0 中的Qt Core 可能包含以下许可下的第三方模块:
Apache Tika MimeType Definitions, version 5101bc7fb090ed7deffe56837d7633c9485a1e5d | 阿帕奇许可证 2.0 |
BLAKE2 (reference implementation), version ed1974ea83433eba7b2d95c5dcd9ac33cb847913 | Creative Commons Zero v1.0 Universal 或 Apache License 2.0 |
zlib 许可证 | |
BSD 3 条款 "新 "或 "修订 "许可证 | |
Efficient Binary-Decimal and Decimal-Binary Conversion Routines for IEEE Doubles, version 3.3.0 | BSD 3 条款 "新 "或 "修订 "许可证 |
BSD-3 条款 | |
BSD-3 条款 | |
公共领域 | |
公共领域 | |
BSD 2 条款 "简化 "许可证 | |
BSD 3 条款 "新 "或 "修订 "许可协议,带 PCRE2 双元类软件包例外 | |
BSD 3 条款 "新 "或 "修订 "许可证 | |
公共领域 | |
知识共享零版 v1.0 通用版 | |
Secure Hash Algorithm SHA-3 - brg_endian, version 4b9e13ead2c5b5e41ca27c65de4dd69ae0bac228 | BSD 2 条款 "简化 "许可协议 |
BSD 3 条款 "新 "或 "修订 "许可协议 | |
知识共享 零版 v1.0 通用版 | |
MIT 许可 | |
统一码许可协议 - 数据文件和软件 (2016) | |
统一码许可证 v3 | |
BSD-3 条款 | |
BSD-3-Clause | |
MIT 许可 |
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.