Qt Core
Основные возможности
Qt Core добавляет следующие возможности к C++:
- очень мощный механизм бесшовной связи объектов, называемый сигналами и слотами
- запрашиваемые и настраиваемые свойства объектов
- иерархические и запрашиваемые деревья объектов, которые организуют
- владение объектами естественным образом с помощью защищенных указателей (QPointer)
- динамический преобразование типов, работающий между библиотеками
Следующие страницы предоставляют более подробную информацию об основных функциях Qt:
Использование модуля
Использование Qt-модуля требует ссылки на библиотеку модуля, либо напрямую, либо через другие зависимости. Несколько инструментов сборки поддерживают это, включая CMake и qmake.
Сборка с помощью CMake
Используйте команду find_package() для поиска необходимых компонентов модуля в пакете Qt5.
find_package(Qt5 COMPONENTS Core REQUIRED) target_link_libraries(mytarget Qt5::Core)
См. также обзор Сборка с помощью CMake.
Сборка с помощью qmake
Если вы используете qmake для сборки своих проектов, Qt5Core подключается по умолчанию.
Потоки и конкурентное программирование
Qt предоставляет поддержку потоков в виде независимых от платформы классов потоков, безопасный способ отправки событий и соединений сигналов-слотов через потоки. Мультипоточная программирование также является полезной парадигмой для выполнения длительных операций без зависания пользовательского интерфейса приложения.
Страница Поддержка потоков в Qt содержит информацию по реализации потоков в приложениях. Дополнительные конкурентные классы предоставляются модулем Qt Concurrent.
Ввод/вывод, ресурсы и контейнеры
Qt предоставляет систему ресурсов для организации файлов и ресурсов приложения, набор контейнеров и классы для приема ввода и вывода.
Кроме того, Qt Core предоставляет независимый от платформы механизм для хранения двоичных файлов в исполняемом файле приложения.
Дополнительные фреймворки
Qt Core также предоставляет некоторые ключевые фреймворки Qt.
- Фреймворк анимации
- Поддержка JSON в Qt
- Фреймворк машины состояний
- Как создать Qt-плагины
- Система событий
Лицензии и атрибуции
Qt Core доступен по коммерческим лицензиям от The Qt Company. Кроме того, он доступен по лицензиям свободного программного обеспечения. Начиная с Qt 5.4, эти лицензии свободного программного обеспечения — GNU Lesser General Public License, версия 3 или GNU General Public License, версия 2. Дополнительные сведения см. в Qt Licensing.
Исполняемые файлы в Windows потенциально ссылаются на библиотеку qtmain. Эта библиотека доступна по коммерческим лицензиям, а также по лицензии BSD 3-clause "New" or "Revised".
Кроме того, Qt Core в Qt 5.15.1 может содержать модули сторонних разработчиков под следующими либеральными лицензиями:
Лицензия zlib |
|
BSD 3-clause "New" или "Revised" License |
|
Эффективные двоично-десятичные и десятично-двоичные преобразования для IEEE Doubles, версия 3.1.5 |
BSD 3-clause "New" или "Revised" License |
FreeBSD strtoll и strtoull, версия 18b29f3fb8abee5d57ed8f4a44f806bec7e0eeff |
BSD 3-clause "New" или "Revised" License |
Общественное достояние |
|
Общественное достояние |
|
BSD 2-clause "Simplified" License |
|
BSD 3-clause "New" или "Revised" License |
|
BSD 3-clause "New" или "Revised" License |
|
Общественное достояние |
|
Creative Commons Zero v1.0 Universal |
|
BSD 2-clause "Simplified" License |
|
BSD 3-clause "New" или "Revised" License |
|
BSD 2-clause "Simplified" License |
|
BSD 2-clause "Simplified" License |
|
BSD 2-clause "Simplified" License |
|
BSD 2-clause "Simplified" License |
|
BSD 2-clause "Simplified" License |
|
BSD 2-clause "Simplified" License |
|
BSD 2-clause "Simplified" License |
|
Список общедоступных суффиксов, версия b880425f09bca902da412bdece4f68e942f3a23b, получен 2020-03-13 |
Mozilla Public License 2.0 |
Лицензия MIT |
|
Соглашение о лицензиях Unicode — файлы данных и программное обеспечение (2016) |
|
Общедоступный репозиторий данных локали Unicode (CLDR), версия v36 |
Соглашение о лицензиях Unicode — файлы данных и программное обеспечение (2016) |
Лицензия MIT |
Справочник
Это ссылки на материалы справочной информации по API.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qtcore-index.html