__RTDynamicCast
Implementación en tiempo de ejecución del operador dynamic_cast
.
Sintaxis
PVOID __RTDynamicCast(
PVOID inptr,
LONG VfDelta,
PVOID SrcType,
PVOID TargetType,
BOOL isReference
) throw(...)
Parámetros
inptr
Puntero a un objeto polimórfico.
VfDelta
Desplazamiento del puntero de función virtual en el objeto.
SrcType
Tipo estático del objeto al que apunta el parámetro inptr
.
TargetType
Resultado previsto de la conversión.
isReference
true
si la entrada es una referencia; false
si la entrada es un puntero.
Valor devuelto
Puntero al objeto secundario adecuado, si es correcto; en caso contrario, NULL
.
Excepciones
bad_cast()
si la entrada dynamic_cast<>
es una referencia y se produce un error en la conversión.
Comentarios
Convierte inptr
en un objeto de tipo TargetType
. El tipo de inptr
debe ser un puntero si TargetType
es un puntero, o un valor L si TargetType
es una referencia. TargetType
debe ser un puntero o una referencia a un tipo de clase definido previamente o un puntero a void.
Requisitos
Routine | Encabezado necesario |
---|---|
__RTDynamicCast |
<rttidata.h> |