Partager via


__RTDynamicCast

Implémentation du runtime de l’opérateur dynamic_cast.

Syntaxe

PVOID __RTDynamicCast(
   PVOID inptr,
   LONG VfDelta,
   PVOID SrcType,
   PVOID TargetType,
   BOOL isReference
) throw(...)

Paramètres

inptr
Pointeur vers un objet polymorphe.

VfDelta
Décalage du pointeur de fonction virtuel dans l’objet.

SrcType
Type statique d’objet vers lequel pointe le paramètre inptr.

TargetType
Résultat prévu de cast.

isReference
true si l’entrée est une référence ; false si l’entrée est un pointeur.

Valeur retournée

Pointeur vers le sous-objet approprié, en cas de réussite ; sinon, NULL.

Exceptions

bad_cast() si l’entrée de dynamic_cast<> est une référence et que le cast échoue.

Notes

Convertit inptr en objet de type TargetType. Le type de inptr doit être un pointeur si TargetType est un pointeur ou une l-value si TargetType est une référence. TargetType doit être un pointeur ou une référence à un type de classe précédemment défini, ou un pointeur vers void.

Spécifications

Routine En-tête requis
__RTDynamicCast <rttidata.h>