__RTDynamicCast
Implementace modulu runtime operátoru dynamic_cast
.
Syntaxe
PVOID __RTDynamicCast(
PVOID inptr,
LONG VfDelta,
PVOID SrcType,
PVOID TargetType,
BOOL isReference
) throw(...)
Parametry
inptr
Ukazatel na polymorfní objekt
VfDelta
Posun ukazatele virtuální funkce v objektu
SrcType
Statický typ objektu, na který inptr
odkazuje parametr.
TargetType
Zamýšlený výsledek přetypování
isReference
true
je-li vstup odkazem; false
pokud je vstup ukazatelem.
Vrácená hodnota
Ukazatel na příslušný podobjekt, pokud je úspěšný; v opačném případě . NULL
Výjimky
bad_cast()
pokud je vstupem dynamic_cast<>
odkaz a přetypování selže.
Poznámky
inptr
Převede na objekt typu TargetType
. Typ inptr
musí být ukazatel, pokud TargetType
je ukazatel, nebo l-hodnota, pokud TargetType
je odkaz. TargetType
musí být ukazatel nebo odkaz na dříve definovaný typ třídy nebo ukazatel na void.
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
__RTDynamicCast |
<rttidata.h> |