__RTDynamicCast

Implementierung von dynamic_cast des Operators.

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

Parameter

  • inptr
    Ein Zeiger auf einen polymorphen Objekt.

  • VfDelta
    Offset des virtuellen Funktionszeigers im Objekt.

  • SrcType
    Statischer Typ des Objekts in der inptr für den Parameter.

  • TargetType
    Beabsichtigtes Ergebnis einer Typumwandlung.

  • isReference
    true , wenn die Eingabe ein Verweis ist. false , wenn die Eingabe ein Zeiger ist.

Rückgabewert

Zeiger auf den entsprechenden Unterobjekt, wenn erfolgreich; andernfalls NULL.

Ausnahmen

bad_cast() , wenn die Eingabe für dynamic_cast<> ein Verweis und die Umwandlung ist, schlägt der Vorgang fehl.

Hinweise

Konvertiert inptr in ein Objekt des Typs TargetType.Der Typ der inptr muss ein Zeiger, wenn TargetType ein Zeiger ist oder ein L-Wert sein, wenn TargetType ein Verweis ist.TargetType muss ein Zeiger oder einen Verweis zu einem zuvor definierten Klassentyps oder ein Zeiger sein. Aufheben

Anforderungen

Routine

Erforderlicher Header

__RTDynamicCast

rtti.h