Método IModelObject::TryCastToRuntimeType (dbgmodel.h)

O método TryCastToRuntimeType solicitará que o host de depuração execute uma análise e determine o tipo de runtime real (por exemplo, a classe mais derivada) do objeto fornecido. A análise exata utilizada é específica para o host de depuração e pode incluir RTTI (informações de tipo de tempo de execução C++), exame da estrutura V-Table(tabela de funções virtuais) do objeto ou qualquer outro meio que o host possa usar para determinar de forma confiável o tipo dinâmico/de runtime do tipo estático. Falha ao converter em um tipo de runtime não significa que essa chamada de método falhará. Nesses casos, o método retornará o objeto fornecido (o ponteiro deste) no argumento de saída.

Sintaxe

HRESULT TryCastToRuntimeType(
  _COM_Errorptr_ IModelObject **runtimeTypedObject
);

Parâmetros

runtimeTypedObject

A conversão do objeto fornecido em uma instância de seu tipo dinâmico/runtime será retornada nesse argumento. Se a análise não encontrar uma alteração no tipo estático, o objeto fornecido (este ponteiro) talvez tenha retornado (com uma referência adicional) nesta saída.

Retornar valor

Esse método retorna HRESULT que indica êxito ou falha. Observe que uma análise que não pode encontrar um tipo derivado não é uma falha, conforme definido aqui.

Comentários

Exemplo de código

ComPtr<IModelObject> spUnknown; /* get an IUnknown pointer to some CFoo */

ComPtr<IModelObject> spRuntimeObj;
if (SUCCEEDED(spUnknown->TryCastToRuntimeType(&spRuntimeObj)))
{
    // spRuntimeObj will refer to the CFoo.
}

Requisitos

Requisito Valor
Cabeçalho dbgmodel.h

Confira também

Interface IModelObject