Le noyau interne
Qt contient un riche ensemble d'outils fondamentaux, principalement issus du module Qt Core . Qt utilise ces outils pour fournir des composants d'interface utilisateur et de développement d'applications de plus haut niveau. Les rubriques suivantes expliquent les outils les plus importants et montrent comment les utiliser pour mettre en œuvre des fonctionnalités spécialisées qui ne sont pas déjà fournies par Qt.
Objets, propriétés et événements
La classe QObject constitue la base du modèle d'objet de Qt et est la classe mère de nombreuses classes de Qt. Le modèle d'objet introduit de nombreux mécanismes tels qu'un système de méta-objets qui permet l'introspection, la manipulation et l'invocation des propriétés et des méthodes de l'objet au moment de l'exécution. Il sert également de base au système d'événements de Qt, qui est un moyen de communication de bas niveau entre les objets basés sur QObject. Une autre forme de communication de haut niveau est fournie par le mécanisme de signaux et d'emplacements de Qt.
En outre, QObject fournit un mécanisme de synchronisation simple avec QObject::startTimer(). La classe QTimer fournit également une interface de haut niveau pour les minuteries.
- Modèle d'objet
- Le système de méta-objets
- Le système de propriété
- Le système d'événements
- Signaux et emplacements
- Minuteries
Classes de conteneurs
Un conteneur est une structure de données dont les instances sont des collections d'autres objets. Voici quelques exemples de conteneurs : les tableaux dynamiques, les files d'attente, les listes liées et les tableaux associatifs. Qt fournit un ensemble de classes de conteneurs à usage général, basées sur des modèles, pour structurer les données en mémoire.
Voir la liste complète des classes de conteneurs pour plus de détails.
Internationalisation
Qt utilise Unicode pour le codage des chaînes de texte affichables. Unicode prend en charge tous les systèmes d'écriture couramment utilisés dans le monde et est idéal pour le développement multiplateforme. Les applications peuvent également être écrites pour prendre en charge un nombre quelconque de langues différentes avec une seule base de code en utilisant le puissant système d'internationalisation de Qt.
Communication inter-processus dans Qt
Qt fournit plusieurs classes pour prendre en charge la communication entre les processus. Vous pouvez également lancer et gérer des processus externes à l'aide de la classe QProcess.
Filière
Qt fournit des fonctionnalités pour gérer les threads et le code parallélisé d'une manière sûre et indépendante de la plate-forme.
Voir Multi-threading dans Qt pour plus d'informations.
Prise en charge de C++20 dans Qt
Qt fournit un support pour C++17 depuis Qt 6.0. Cependant, nous travaillons constamment sur la prise en charge des nouvelles fonctionnalités du langage.
Prise en charge de la plate-forme
Qt vous permet d'écrire du code indépendant de la plate-forme, où la même base de code peut être compilée et déployée sur différentes plates-formes sans aucun changement. Dans les cas où vous devez utiliser des fonctionnalités spécifiques à une plate-forme et vous intégrer à des bibliothèques système, Qt fournit également des solutions pour cela.
Qt s'intègre au système de fenêtrage de la plateforme cible en utilisant Qt Platform Abstraction (QPA). QPA est une abstraction d'un système de fenêtrage qui rend le portage de Qt sur de nouvelles plateformes simple et rapide. L'un de ces systèmes est le protocole Wayland. Qt peut être utilisé avec Wayland comme système de fenêtrage léger sur du matériel embarqué pour prendre en charge une interface utilisateur graphique multiprocessus.
L'abstraction de la plateforme Qt utilise le système de plugins de Qt. Ce système de plugins fournit des API pour étendre Qt dans des domaines spécifiques (comme l'ajout de la prise en charge de nouveaux formats d'image, de pilotes de base de données, etc.) et également pour écrire vos propres applications Qt extensibles qui prennent en charge des plugins tiers.
- Abstraction de la plate-forme Qt
- Comment créer des plugins Qt
- Endian Conversion Functions - fonctions pour gérer l'endianness à partir de l'en-tête QtEndian
© 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.