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 の主要なフレームワークのいくつかを提供します。
リファレンス
- C++ Classes
- CMake API
モジュールの進化
Qt Core の変更点には、Qt 6 シリーズの Qt で行われたモジュール API と機能の重要な変更が記載されています。
ライセンスと帰属
Qt Core はThe Qt Company から商用ライセンスで入手できます。さらに、フリーソフトウェアライセンスでも利用可能です:GNU Lesser General Public License, version 3, またはGNU General Public License, version 2.詳細はQt ライセンスを参照してください。
Windows 上の実行ファイルは、QtEntryPoint ライブラリにリンクする可能性があります。このライブラリは商用ライセンスのほか、BSD 3条項「新規」または「改訂」ライセンスでも利用できます。
さらに、Qt 6.8.2 のQt Core には、以下の許諾ライセンスの下、サードパーティモジュールが含まれている可能性があります:
Apache Tika MimeType Definitions, version 5101bc7fb090ed7deffe56837d7633c9485a1e5d | Apache ライセンス 2.0 |
BLAKE2 (reference implementation), version ed1974ea83433eba7b2d95c5dcd9ac33cb847913 | クリエイティブ・コモンズ・ゼロ v1.0 ユニバーサルまたはアパッチ・ライセンス 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条項「簡易」ライセンス | |
PCRE2バイナリライクパッケージ例外付きBSD 3条項「新規」または「改訂」ライセンス | |
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-条項 | |
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.