__RTDynamicCast

dynamic_cast 运算符的运行时实现。

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

参数

  • inptr
    为多态对象的指针。

  • VfDelta
    按对象的虚函数指针。

  • SrcType
    静态对象指向由 inptr 参数。

  • TargetType
    转换的预期结果。

  • isReference
    true ,如果输入为引用; false ,如果输入是指针。

返回值

为相应的子对象的指针,因此,如果成功;否则,则为 null。

异常

bad_cast() ,如果对 dynamic_cast<> 的输入是引用和该转换失败。

备注

转换 inptr 转换为类型 TargetType对象。 inptr 的类型必须是指针,如果 TargetType 是指针,或左值,如果 TargetType 是引用。 TargetType 必须是指针或引用到以前已定义的类类型或无效的指针。

要求

实例

必需的头

__RTDynamicCast

rtti.h