__RTDynamicCast
Implementacja dynamic_cast
środowiska uruchomieniowego operatora.
Składnia
PVOID __RTDynamicCast(
PVOID inptr,
LONG VfDelta,
PVOID SrcType,
PVOID TargetType,
BOOL isReference
) throw(...)
Parametry
inptr
Wskaźnik do obiektu polimorficznego.
VfDelta
Przesunięcie wskaźnika funkcji wirtualnej w obiekcie.
SrcType
Statyczny typ obiektu wskazywany inptr
przez parametr .
TargetType
Zamierzony wynik rzutowania.
isReference
true
jeśli dane wejściowe są odwołaniem; false
jeśli dane wejściowe są wskaźnikiem.
Wartość zwracana
Wskaźnik do odpowiedniego podobiektu, jeśli się powiedzie; w przeciwnym razie, NULL
.
Wyjątki
bad_cast()
jeśli dane wejściowe elementu dynamic_cast<>
to odwołanie, a rzutowanie kończy się niepowodzeniem.
Uwagi
Konwertuje inptr
na obiekt typu TargetType
. Typ inptr
musi być wskaźnikiem, jeśli TargetType
jest wskaźnikiem lub wartością l, jeśli TargetType
jest odwołaniem. TargetType
musi być wskaźnikiem lub odwołaniem do wcześniej zdefiniowanego typu klasy lub wskaźnikiem do pustki.
Wymagania
Procedura | Wymagany nagłówek |
---|---|
__RTDynamicCast |
<rttidata.h> |