Obsolete Members for QMetaType
Les membres suivants de la classe ` QMetaType ` sont obsolètes. Ils sont fournis afin de garantir la compatibilité avec l'ancien code source. Nous déconseillons fortement de les utiliser dans le nouveau code.
Membres publics statiques
(deprecated in 6.0) bool | compare(const void *lhs, const void *rhs, int typeId, int *result) |
(deprecated in 6.0) void * | construct(int type, void *where, const void *copy) |
(deprecated in 6.0) bool | convert(const void *from, int fromTypeId, void *to, int toTypeId) |
(deprecated in 6.0) void * | create(int type, const void *copy = nullptr) |
(deprecated in 6.0) bool | debugStream(QDebug &dbg, const void *rhs, int typeId) |
(deprecated in 6.0) void | destroy(int type, void *data) |
(deprecated in 6.0) void | destruct(int type, void *where) |
(deprecated in 6.0) bool | hasRegisteredDebugStreamOperator() |
(deprecated in 6.0) bool | hasRegisteredDebugStreamOperator(int typeId) |
(deprecated in 6.0) bool | load(QDataStream &stream, int type, void *data) |
(deprecated in 6.0) const QMetaObject * | metaObjectForType(int type) |
(deprecated in 6.0) bool | save(QDataStream &stream, int type, const void *data) |
(deprecated in 6.0) int | sizeOf(int type) |
(deprecated in 6.0) int | type(const char *typeName) |
(deprecated in 6.0) int | type(const QByteArray &typeName) |
(deprecated in 6.0) QMetaType::TypeFlags | typeFlags(int type) |
(deprecated in 6.0) const char * | typeName(int typeId) |
Éléments non membres associés
(deprecated) int | qRegisterMetaType(const char *typeName) |
Documentation sur les fonctions membres
[static, deprecated in 6.0] bool QMetaType::compare(const void *lhs, const void *rhs, int typeId, int *result)
Cette fonction est obsolète depuis la version 6.0. Nous vous déconseillons fortement de l'utiliser dans du code nouveau.
Utilisez plutôt la méthode compare non statique.
Compare les objets situés à lhs et rhs. Les deux objets doivent être de type typeId. result est défini comme inférieur, égal ou supérieur à zéro si lhs est inférieur, égal ou supérieur à rhs. Renvoie true si la comparaison a réussi, sinon false.
[static, deprecated in 6.0] void *QMetaType::construct(int type, void *where, const void *copy)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Construit une valeur du type type dans la mémoire existante à l'adresse where, c'est-à-dire une copie de copy, et renvoie where. Si copy est égal à zéro, la valeur est construite par défaut.
Il s'agit d'une fonction de bas niveau permettant de gérer explicitement la mémoire utilisée pour stocker ce type. Envisagez d'appeler ` create()` si vous n'avez pas besoin d'un tel niveau de contrôle (c'est-à-dire utilisez « new » plutôt que « placement new »).
Vous devez vous assurer que ` where ` pointe vers un emplacement capable de stocker une valeur de type ` type`, et que ` where ` est correctement aligné. La taille du type peut être interrogée en appelant ` sizeOf()`.
La règle générale en matière d’alignement est qu’un type doit être aligné sur sa limite naturelle, c’est-à-dire la plus petite puissance de 2 supérieure au type, à moins que cet alignement ne soit supérieur à l’alignement utile maximal pour la plate-forme. Dans la pratique, un alignement supérieur à 2 * sizeof(void*) n’est nécessaire que pour des instructions matérielles spécifiques (par exemple, les chargements et stockages SSE alignés sur x86).
Voir également destruct() et sizeOf().
[static, deprecated in 6.0] bool QMetaType::convert(const void *from, int fromTypeId, void *to, int toTypeId)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Convertit l'objet situé à l'adresse from, de type fromTypeId, vers l'espace préalloué situé à l'adresse to, de type toTypeId. Renvoie true si la conversion a réussi, sinon false.
from et to doivent tous deux être des pointeurs valides.
[static, deprecated in 6.0] void *QMetaType::create(int type, const void *copy = nullptr)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Renvoie une copie de copy, en supposant qu'il soit de type type. Si copy est égal à zéro, crée une instance construite par défaut.
Voir également destroy(), isRegistered() et Type.
[static, deprecated in 6.0] bool QMetaType::debugStream(QDebug &dbg, const void *rhs, int typeId)
Cette fonction est obsolète depuis la version 6.0. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.
Il s'agit d'une fonction surchargée.
[static, deprecated in 6.0] void QMetaType::destroy(int type, void *data)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Détruit l'data, en supposant qu'il s'agisse de l'type spécifié.
Voir également create(), isRegistered() et Type.
[static, deprecated in 6.0] void QMetaType::destruct(int type, void *where)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Détruit la valeur de l’ type donné, situé à l’adresse where.
Contrairement à ` destroy()`, cette fonction appelle uniquement le destructeur du type ; elle n'appelle pas l'opérateur `delete`.
Voir également ` construct()`.
[static, deprecated in 6.0] template <typename T> bool QMetaType::hasRegisteredDebugStreamOperator()
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Renvoie ` true` si le système de types méta dispose d'un opérateur de flux de débogage enregistré pour le type `T`.
[static, deprecated in 6.0] bool QMetaType::hasRegisteredDebugStreamOperator(int typeId)
Cette fonction est obsolète depuis la version 6.0. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.
Utilisez plutôt ` QMetaType::hasRegisteredDebugStreamOperator()`.
Renvoie ` true` si le système de types méta dispose d'un opérateur de flux de débogage enregistré pour l'identifiant de type ` typeId`.
[static, deprecated in 6.0] bool QMetaType::load(QDataStream &stream, int type, void *data)
Cette fonction est obsolète depuis la version 6.0. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.
Il s'agit d'une fonction surchargée.
[static, deprecated in 6.0] const QMetaObject *QMetaType::metaObjectForType(int type)
Cette fonction est obsolète depuis la version 6.0. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.
Renvoie « QMetaType::metaObject » pour type
Voir aussi metaObject().
[static, deprecated in 6.0] bool QMetaType::save(QDataStream &stream, int type, const void *data)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Il s'agit d'une fonction surchargée.
[static, deprecated in 6.0] int QMetaType::sizeOf(int type)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Renvoie la taille de l'type donné en octets (c'est-à-dire sizeof(T), où T est le type réel identifié par l'argument type ).
Cette fonction est généralement utilisée conjointement avec construct() pour effectuer une gestion de bas niveau de la mémoire utilisée par un type.
Voir également construct() et QMetaType::alignOf().
[static, deprecated in 6.0] int QMetaType::type(const char *typeName)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Renvoie un descripteur du type typeName, ou QMetaType::UnknownType s'il n'existe pas de type de ce nom.
Voir également isRegistered(), typeName() et Type.
[static, deprecated in 6.0] int QMetaType::type(const QByteArray &typeName)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Renvoie un descripteur vers le type nommé « typeName », ou 0 si ce type n'existe pas.
Il s'agit d'une fonction surchargée.
Voir également ` isRegistered()` et ` typeName()`.
[static, deprecated in 6.0] QMetaType::TypeFlags QMetaType::typeFlags(int type)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons vivement de l'utiliser dans du nouveau code.
Renvoie les indicateurs de l'type donné.
Voir également ` QMetaType::TypeFlags`.
[static, deprecated in 6.0] const char *QMetaType::typeName(int typeId)
Cette fonction est obsolète depuis la version 6.0. Nous déconseillons vivement de l'utiliser dans du nouveau code.
Renvoie le nom du type associé à l'typeId donné, ou un pointeur nul si aucun type correspondant n'a été trouvé. Le pointeur renvoyé ne doit pas être supprimé.
Voir également type(), isRegistered(), Type et name().
Éléments non membres associés
[deprecated] template <typename T> int qRegisterMetaType(const char *typeName)
Cette fonction est obsolète. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.
Enregistre le nom de type typeName pour le type T. Renvoie l'identifiant interne utilisé par QMetaType. Toute classe ou structure disposant d'un constructeur par défaut public, d'un constructeur de copie public et d'un destructeur public peut être enregistrée.
Cette fonction nécessite que T soit un type entièrement défini au moment de l’appel de la fonction. Pour les types de pointeurs, elle nécessite également que le type pointé soit entièrement défini. Utilisez Q_DECLARE_OPAQUE_POINTER() pour pouvoir enregistrer des pointeurs vers des types déclarés en avance.
Une fois qu’un type a été enregistré, vous pouvez créer et détruire dynamiquement des objets de ce type lors de l’exécution.
Cet exemple enregistre la classe ` MyClass` :
qRegisterMetaType<MyClass>("MyClass");Cette fonction est utile pour enregistrer des `typedef` afin qu'ils puissent être utilisés par ` QMetaProperty` ou dans `QueuedConnections`
typedef QString CustomString;
qRegisterMetaType<CustomString>("CustomString");Avertissement : cette fonction ne sert qu'à enregistrer un alias (typedef) ; pour tout autre cas d'utilisation, il convient d'utiliser plutôt les fonctions Q_DECLARE_METATYPE et qMetaTypeId().
Voir également isRegistered() et Q_DECLARE_METATYPE().
© 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.