STATIC_DOWNCAST
Lance pobject sur un pointeur vers un objet de nom_de_classe.
STATIC_DOWNCAST(class_name, pobject )
Paramètres
nom de classe
Le nom de la classe vers laquelle on lance.pobject
Le pointeur à lancer sur un pointeur vers un objet de nom_de_classe.
Notes
pobject doit être soit NULL, ou indiquer un objet d'une classe dérivée directement ou indirectement de nom_de_classe. Dans les versions de votre application avec symbole _DEBUG du préprocesseur défini, la macro va VERIFIER si le pobject n'est pas NULL, ou s'il indique un objet qui n'est pas un « type » de la classe spécifiée dans le paramètre nom_de_lasse (consultez CObject::IsKindOf). Dans les versions ne disposant pas de**_DEBUG**, la macro effectue la conversion sans vérification de type.
La classe spécifiée dans le paramètre de nom_de_classe doit être dérivée de CObject et doit utiliser les macros DECLARE_DYNAMIC et IMPLEMENT_DYNAMIC, DECLARE_DYNCREATE et IMPLEMENT_DYNCREATE, ou DECLARE_SERIAL et IMPLEMENT_SERIAL comme expliqué dans l'article Classe de CObject : Dérivation d'une classe depuis CObject.
Par exemple, vous pouvez lancer un pointeur vers CMyDoc, appelé pMyDoc, sur un pointeur vers CDocument en utilisant l'expression suivante :
CDocument* pDoc = STATIC_DOWNCAST(CDocument, pMyDoc);
Si pMyDoc n'indique pas un objet dérivé directement ou indirectement de CDocument, la macro va VERIFIER.
Configuration requise
En-tête : afx.h