Compartilhar via


__RTDynamicCast

Implementação do runtime do operador dynamic_cast.

Sintaxe

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

Parâmetros

inptr
Ponteiro para um objeto polimórfico.

VfDelta
Deslocamento do ponteiro de função virtual no objeto.

SrcType
O tipo estático do objeto apontado pelo parâmetro inptr.

TargetType
Resultado desejado da conversão.

isReference
true se a entrada for uma referência; false se ela for um ponteiro.

Valor retornado

Ponteiro do subobjeto apropriado se for bem-sucedido; caso contrário, NULL.

Exceções

bad_cast() se a entrada para dynamic_cast<> for uma referência e a conversão falhar.

Comentários

Converte inptr em um objeto do tipo TargetType. O tipo de inptr deve ser um ponteiro se TargetType for um ponteiro, ou um l-value se TargetType for uma referência. TargetType deve ser um ponteiro ou uma referência a um tipo de classe previamente definido ou a um “ponteiro para nulo”.

Requisitos

Rotina Cabeçalho necessário
__RTDynamicCast <rttidata.h>