Qt3DCore::QAbstractFunctor Class
class Qt3DCore::QAbstractFunctorQAbstractFunctor est une classe de base abstraite pour tous les foncteurs. En savoir plus...
| En-tête : | #include <QAbstractFunctor> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3DCore) target_link_libraries(mytarget PRIVATE Qt6::3DCore) |
| qmake : | QT += 3dcore |
| Hérité par : | |
| Statut : | Obsolète |
Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.
Fonctions publiques
| QAbstractFunctor() | |
| virtual | ~QAbstractFunctor() |
| const T * | functor_cast(const Qt3DCore::QAbstractFunctor *other) const |
| virtual qintptr | id() const = 0 |
Macros
| QT3D_FUNCTOR(Class) |
Description détaillée
La classe QAbstractFunctor sert de classe de base à tous les functors et générateurs de données du module Qt3DCore.
Lorsque l'utilisateur définit un nouveau foncteur ou générateur, il doit implémenter la méthode ` QAbstractFunctor::id()`, ce qui doit être effectué à l'aide de la macro ` QT3D_FUNCTOR ` dans la définition de la classe.
Documentation des fonctions membres
[constexpr noexcept default] QAbstractFunctor::QAbstractFunctor()
Construit par défaut une instance de ` QAbstractFunctor`.
[virtual noexcept] QAbstractFunctor::~QAbstractFunctor()
Destructeur
template <typename T> const T *QAbstractFunctor::functor_cast(const Qt3DCore::QAbstractFunctor *other) const
Cette méthode permet de convertir le foncteur other en type T si l'autre est de type T (ou d'une sous-classe) ; sinon, elle renvoie 0. Cette méthode fonctionne de manière similaire à qobject_cast(), sauf qu'elle s'applique aux foncteurs dérivés de QAbstractFunctor.
Avertissement : si T n’a pas été déclaré avec la macro QT3D_FUNCTOR, les résultats sont indéfinis.
[pure virtual] qintptr QAbstractFunctor::id() const
Renvoie un pointeur vers l'identifiant du foncteur.
Documentation des macros
QT3D_FUNCTOR(Class)
Cette macro attribue l'identifiant « functor » à l'Class, qui est utilisé par QAbstractFunctor::functor_cast pour déterminer si la conversion est possible.
© 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.