Spec-Zone.ru › Qt 5.12

Qt Core

Основные возможности

Qt Core добавляет следующие возможности в C++:

  • очень мощный механизм бесшовной связи объектов, называемый сигналами и слотами
  • запрашиваемые и настраиваемые свойства объектов
  • иерархические и запрашиваемые деревья объектов, которые организуют
  • владение объектами естественным образом с помощью защищенных указателей (QPointer)
  • динамический преобразование типов, работающий между библиотеками

На следующих страницах вы найдете более подробную информацию о ключевых возможностях Qt Core:

  • Система метаобъектов
  • Система свойств
  • Модель объектов
  • Деревья объектов и владение
  • Сигналы и слоты

Использование модуля

Для использования 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
  • Неявное совместное использование

Кроме того, Qt Core предоставляет независимый от платформы механизм для хранения двоичных файлов в исполняемом файле приложения.

  • Система ресурсов Qt

Дополнительные фреймворки

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" или "Revised".

Кроме того, Qt Core в Qt 5.12.4 может содержать модули сторонних разработчиков под следующими разрешительными лицензиями:

Библиотека сжатия данных (zlib), версия 1.2.11

Лицензия zlib

Уравнения сглаживания Роберта Пеннера

Лицензия BSD 3-clause "New" или "Revised"

Эффективные двоично-десятичные и десятично-двоичные преобразования для IEEE Doubles, версия 3.1.1

Лицензия BSD 3-clause "New" или "Revised"

FreeBSD strtoll и strtoull, версия 18b29f3fb8abee5d57ed8f4a44f806bec7e0eeff

Лицензия BSD 3-clause "New" или "Revised"

MD4

Общественное достояние

MD5

Общественное достояние

PCRE2 — компилятор Just-In-Time без стека, версия 10.33

Лицензия BSD 2-clause "Simplified"

PCRE2, версия 10.33

Лицензия BSD 3-clause "New" или "Revised"

QEventDispatcher на macOS

Лицензия BSD 3-clause "New" или "Revised"

Secure Hash Algorithm SHA-1

Общественное достояние

Secure Hash Algorithm SHA-3 — Keccak, версия 3.2

Creative Commons Zero v1.0 Universal

Secure Hash Algorithm SHA-3 — brg_endian, версия https://github.com/BrianGladman/sha/ commit 4b9e13ead2c5b5e41ca27c65de4dd69ae0bac228

Лицензия BSD 2-clause "Simplified"

Secure Hash Algorithms SHA-384 и SHA-512

Лицензия BSD 3-clause "New" или "Revised"

Кодек текста: EUC-JP

Лицензия BSD 2-clause "Simplified"

Кодек текста: EUC-KR

Лицензия BSD 2-clause "Simplified"

Кодек текста: GBK

Лицензия BSD 2-clause "Simplified"

Кодек текста: ISO 2022-JP (JIS)

Лицензия BSD 2-clause "Simplified"

Кодек текста: Shift-JIS

Лицензия BSD 2-clause "Simplified"

Кодек текста: TSCII

Лицензия BSD 2-clause "Simplified"

Кодек текста: Big5, Big5-HKSCS

Лицензия BSD 2-clause "Simplified"

Список общедоступных суффиксов, версия Создано 2018-01-04

Mozilla Public License 2.0

TinyCBOR, версия 0.6+patches

MIT License

База данных символов Unicode (UCD), версия 20

Соглашение об использовании лицензии Unicode — файлы данных и программное обеспечение (2016)

Общие данные о региональных настройках Unicode (CLDR), версия v35.1

Соглашение об использовании лицензии Unicode — файлы данных и программное обеспечение (2016)

forkfd

MIT License

Справочник

Вот ссылки на материалы справочника API.

  • Классы C++
    • Классы анимации
    • Классы потоков
    • Классы контейнеров
    • Классы плагинов
    • Классы с неявным совместным использованием
    • Классы конечного автомата
    • Классы ввода/вывода
    • Классы событий

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qtcore-index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API