Qt Core
Qt Core 模块向 C++ 添加以下功能
- 一个非常强大的对象通信机制,称为信号和槽
- 可查询和可设计的对象属性
- 具有受保护指针(QPointer)的分层和可查询的对象树,能够自然地组织对象所有权
- 支持跨库边界的动态类型转换
以下页面提供有关 Qt 核心功能的更多信息
使用模块
使用 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 核心变更列出了为 Qt 6 系列Qt 实现的模块 API 和功能的重要变更。
许可和归属
Qt 核心可在Qt 公司的商业许可下使用。此外,它还可用以下免费软件许可:GNU 较小通用公共许可证,版本 3,或 GNU 通用公共许可证,版本 2。有关更多信息,请参见Qt 许可。
Windows 上的可执行文件可能会链接到QtEntryPoint 库。此库可在商业许可下使用,也可以在BSD 3-clause "New" 或 "Revised" 许可下使用。
此外,Qt 6.7.2 中的 Qt Core 可能包含以下宽限期许可的第三方模块
Creative Commons Zero v1.0 Universal 或 Apache 许可证 2.0 | |
zlib 许可证 | |
BSD 3-clause "New" 或 "Revised" 许可 | |
BSD 3-clause "New" 或 "Revised" 许可 | |
BSD-3-Clause | |
公共领域 | |
公共领域 | |
BSD 2-clause "Simplified" 许可证 | |
带有 PCRE2 二进制包例外条款的 BSD 3-clause "New" 或 "Revised" 许可证 | |
BSD 3-clause "New" 或 "Revised" 许可 | |
公共领域 | |
Creative Commons Zero v1.0 Universal | |
BSD 2-clause "Simplified" 许可证 | |
BSD 3-clause "New" 或 "Revised" 许可 | |
Creative Commons Zero v1.0 Universal | |
MIT 许可证 | |
Unicode 许可协议 - 数据文件和软件(2016) | |
Unicode 许可 v3 | |
BSD-3-Clause | |
MIT 许可证 |
© 2024 Qt 公司有限公司。本文件内包含的文档贡献归各自的拥有者版权所有。本文件提供的文档根据(a href="http://www.gnu.org/licenses/fdl.html">GNU 自由文档许可证版本 1.3的条款提供,由自由软件基金会发布。Qt 及各自的标志是全球芬兰和/或其他国家的商标。所有其他商标均为各自所有者的财产。