Obsolete Members for QMetaType

Les membres suivants de la classe QMetaType sont obsolètes. Ils sont fournis pour permettre aux anciens codes sources de continuer à fonctionner. Il est fortement déconseillé de les utiliser dans un nouveau code.

Membres publics statiques

(deprecated) bool compare(const void *lhs, const void *rhs, int typeId, int *result)
(deprecated) void *construct(int type, void *where, const void *copy)
(deprecated) bool convert(const void *from, int fromTypeId, void *to, int toTypeId)
(deprecated) void *create(int type, const void *copy = nullptr)
(deprecated) bool debugStream(QDebug &dbg, const void *rhs, int typeId)
(deprecated) void destroy(int type, void *data)
(deprecated) void destruct(int type, void *where)
(deprecated) bool hasRegisteredDebugStreamOperator()
(deprecated) bool hasRegisteredDebugStreamOperator(int typeId)
(deprecated) bool load(QDataStream &stream, int type, void *data)
(deprecated) const QMetaObject *metaObjectForType(int type)
(deprecated) bool save(QDataStream &stream, int type, const void *data)
(deprecated) int sizeOf(int type)
(deprecated) int type(const char *typeName)
(deprecated) int type(const QByteArray &typeName)
(deprecated) QMetaType::TypeFlags typeFlags(int type)
(deprecated) const char *typeName(int typeId)

Non-membres apparentés

(deprecated) int qRegisterMetaType(const char *typeName)

Documentation des fonctions membres

[static, deprecated] bool QMetaType::compare(const void *lhs, const void *rhs, int typeId, int *result)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Utilisez plutôt la méthode de comparaison non statique

Compare les objets 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] void *QMetaType::construct(int type, void *where, const void *copy)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Construit une valeur de type dans la mémoire existante adressée par where, qui est 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 le type. Pensez à appeler create() si vous n'avez pas besoin de ce niveau de contrôle (c'est-à-dire utilisez "new" plutôt que "placement new").

Vous devez vous assurer que where pointe vers un emplacement qui peut stocker une valeur de type type, et que where est correctement aligné. La taille du type peut être demandée en appelant sizeOf().

La règle empirique en matière d'alignement est qu'un type est aligné sur sa limite naturelle, qui est la plus petite puissance de 2 plus grande que le type, à moins que cet alignement ne soit supérieur à l'alignement maximal utile pour la plate-forme. En pratique, un alignement supérieur à 2 * sizeof(void*) n'est nécessaire que pour les instructions matérielles spéciales (par exemple, les chargements et stockages SSE alignés sur x86).

Voir aussi destruct() et sizeOf().

[static, deprecated] bool QMetaType::convert(const void *from, int fromTypeId, void *to, int toTypeId)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Convertit l'objet à from de fromTypeId vers l'espace préalloué à to typé toTypeId. Elle renvoie true, si la conversion a réussi, sinon elle renvoie false.

from et to doivent être des pointeurs valides.

[static, deprecated] void *QMetaType::create(int type, const void *copy = nullptr)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Renvoie une copie de copy, en supposant qu'elle soit de type type. Si copy est égal à zéro, elle crée une instance construite par défaut.

Voir aussi destroy(), isRegistered(), et Type.

[static, deprecated] bool QMetaType::debugStream(QDebug &dbg, const void *rhs, int typeId)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Il s'agit d'une fonction surchargée.

[static, deprecated] void QMetaType::destroy(int type, void *data)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Détruit le data, en supposant qu'il s'agisse du type indiqué.

Voir aussi create(), isRegistered(), et Type.

[static, deprecated] void QMetaType::destruct(int type, void *where)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Détruit la valeur du type type, située à l'adresse where.

Contrairement à destroy(), cette fonction n'invoque que le destructeur du type, elle n'invoque pas l'opérateur delete.

Voir aussi construct().

[static, deprecated] template <typename T> bool QMetaType::hasRegisteredDebugStreamOperator()

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Retourne true, si le système de méta types a un opérateur de flux de débogage enregistré pour le type T.

[static, deprecated] bool QMetaType::hasRegisteredDebugStreamOperator(int typeId)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Utilisez plutôt QMetaType::hasRegisteredDebugStreamOperator().

Renvoie true, si le système de méta types a un opérateur de flux de débogage enregistré pour le type id typeId.

[static, deprecated] bool QMetaType::load(QDataStream &stream, int type, void *data)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Il s'agit d'une fonction surchargée.

[static, deprecated] const QMetaObject *QMetaType::metaObjectForType(int type)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

renvoie QMetaType::metaObject pour type

Voir aussi metaObject().

[static, deprecated] bool QMetaType::save(QDataStream &stream, int type, const void *data)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Il s'agit d'une fonction surchargée.

[static, deprecated] int QMetaType::sizeOf(int type)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Renvoie la taille du type 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 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] int QMetaType::type(const char *typeName)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Renvoie un handle vers le type appelé typeName, ou QMetaType::UnknownType si ce type n'existe pas.

Voir aussi isRegistered(), typeName(), et Type.

[static, deprecated] int QMetaType::type(const QByteArray &typeName)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Renvoie une poignée vers le type appelé typeName, ou 0 si ce type n'existe pas.

Il s'agit d'une fonction surchargée.

Voir aussi isRegistered() et typeName().

[static, deprecated] QMetaType::TypeFlags QMetaType::typeFlags(int type)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Renvoie les drapeaux de l'adresse type.

Voir aussi QMetaType::TypeFlags.

[static, deprecated] const char *QMetaType::typeName(int typeId)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Renvoie le nom du type associé à l'adresse typeId, ou un pointeur nul si aucun type correspondant n'a été trouvé. Le pointeur retourné ne doit pas être supprimé.

Voir aussi type(), isRegistered(), Type, et name().

Non-membres apparentés

[deprecated] template <typename T> int qRegisterMetaType(const char *typeName)

Cette fonction est obsolète. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Enregistre le nom de type typeName pour le type T. Renvoie l'identifiant interne utilisé par QMetaType. Toute classe ou structure ayant un constructeur public par défaut, un constructeur public par copie et un destructeur public peut être enregistrée.

Cette fonction exige que T soit un type entièrement défini au moment où la fonction est appelée. Pour les types de pointeurs, elle exige également que le type pointé soit entièrement défini. Utilisez Q_DECLARE_OPAQUE_POINTER() pour pouvoir enregistrer des pointeurs sur des types déclarés en amont.

Une fois qu'un type a été enregistré, vous pouvez créer et détruire des objets de ce type de manière dynamique au moment de l'exécution.

Cet exemple enregistre la classe MyClass:

qRegisterMetaType<MyClass>("MyClass");

Cette fonction est utile pour enregistrer des typedefs afin qu'ils puissent être utilisés par QMetaProperty, ou dans QueuedConnections

typedef QString Chaîne personnalisée ;qRegisterMetaType<CustomString>("CustomString");

Attention : Cette fonction n'est utile que pour enregistrer un alias (typedef). Pour tout autre cas d'utilisation, il convient d'utiliser Q_DECLARE_METATYPE et qMetaTypeId().

Voir aussi 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.