Sur cette page

Qt Core

Le module « Qt Core » ajoute les fonctionnalités suivantes au C++ :

  • un mécanisme très puissant permettant une communication transparente entre objets, appelé « signaux et slots »
  • des propriétés d'objets interrogeables et personnalisables
  • des arborescences d'objets hiérarchiques et interrogeables qui organisent la propriété des objets de manière naturelle grâce à des pointeurs protégés (QPointer)
  • un transtypage dynamique fonctionnant au-delà des limites des bibliothèques

Les pages suivantes fournissent plus d’informations sur les fonctionnalités principales de Qt Core :

Utilisation du module

Pour utiliser l'API C++ d'un module Qt, il faut lier le code à la bibliothèque du module, soit directement, soit via d'autres dépendances. Plusieurs outils de compilation prennent cela en charge, notamment CMake et qmake.

Compilation avec CMake

Utilisez la commande « find_package() » pour localiser le composant de module requis dans le paquet « Qt6 » :

find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)

Pour plus de détails, consultez la présentation « Compilation avec CMake ».

Compilation avec qmake

Si vous utilisez qmake pour compiler vos projets, ` Qt Core ` est lié par défaut.

Programmation multithread et concurrente

Qt prend en charge le multithreading grâce à des classes de threads indépendantes de la plate-forme, un mécanisme de publication d’événements sécurisé pour les threads et des connexions signal-slot entre les threads. La programmation multithread est également un paradigme utile pour effectuer des opérations chronophages sans bloquer l’interface utilisateur d’une application.

La page « Multithreading dans Qt » contient des informations sur l’implémentation des threads dans les applications. Des classes concurrentes supplémentaires sont fournies par le Qt Concurrent module.

Entrées/sorties, ressources et conteneurs

Qt fournit un système de ressources permettant d’organiser les fichiers et les éléments d’une application, un ensemble de conteneurs, ainsi que des classes pour la réception des entrées et l’affichage des sorties.

De plus, Qt Core fournit un mécanisme indépendant de la plate-forme permettant de stocker des fichiers binaires dans l'exécutable de l'application.

Frameworks supplémentaires

Qt Core fournit également certains des principaux frameworks de Qt.

Référence

Évolution des modules

La section «Modifications apportées à l'Qt Core » répertorie les modifications importantes apportées à l'API et aux fonctionnalités du module pour la série Qt 6 de Qt.

Licences et mentions de copyright

Qt Core est disponible sous licence commerciale auprès de The Qt Company. Il est également disponible sous licence de logiciel libre : la Licence publique générale restreinte GNU, version 3, ou la Licence publique générale GNU, version 2. Voir Licences Qt pour plus de détails.

Les exécutables sous Windows peuvent être liés à la bibliothèque QtEntryPoint. Cette bibliothèque est disponible sous des licences commerciales ainsi que sous la licence BSD à 3 clauses « New » ou « Revised ».

Par ailleurs, les « Qt Core » (modules de démarrage) de Qt 6.12.0 peuvent contenir des modules tiers sous les licences permissives suivantes :

Apache Tika MimeType Definitions, version c29724782854bb5a319f4a1940d0828a58ace3f9

Licence Apache 2.0

BLAKE2 (reference implementation), version ed1974ea83433eba7b2d95c5dcd9ac33cb847913

Creative Commons Zero v1.0 Universal ou Licence Apache 2.0

Data Compression Library (zlib), version 1.3.2

Licence zlib

Easing Equations by Robert Penner

Licence BSD à 3 clauses « New » ou « Revised »

Efficient Binary-Decimal and Decimal-Binary Conversion Routines for IEEE Doubles, version 3.4.0

Licence BSD à 3 clauses « New » ou « Revised »

MD4

Domaine public

MD5

Domaine public

PCRE2 - Stack-less Just-In-Time Compiler, version 10.48

Licence BSD à 2 clauses « simplifiée »

PCRE2, version 10.48

Licence BSD à 3 clauses « Nouvelle » ou « Révisée » avec exception relative aux paquets de type binaire PCRE2

QEventDispatcher on macOS

Licence BSD à 3 clauses « Nouvelle » ou « Révisée »

Secure Hash Algorithm SHA-1

Domaine public

Secure Hash Algorithm SHA-3 - Keccak, version 3.2

Creative Commons Zero v1.0 Universal

Secure Hash Algorithm SHA-3 - brg_endian, version 1.0.0

Licence BSD « simplifiée » à 2 clauses

Secure Hash Algorithms SHA-384 and SHA-512

Licence BSD à 3 clauses « Nouvelle » ou « Révisée »

SipHash Algorithm

Creative Commons Zero v1.0 Universal

TinyCBOR, version 7.0

Licence MIT

Unicode Character Database (UCD), version 36

Contrat de licence Unicode – Fichiers de données et logiciels (2016)

Unicode Common Locale Data Repository (CLDR), version v48.2

Licence Unicode v3

forkfd

Licence MIT

tl::expected, version 41d3e1f48d682992a2230b2a715bca38b848b269

Creative Commons Zero v1.0 Universal

© 2026 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.