Udostępnij za pośrednictwem


__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>