Método IModelObject::TryCastToRuntimeType (dbgmodel.h)
El método TryCastToRuntimeType pedirá al host de depuración que realice un análisis y determine el tipo en tiempo de ejecución real (por ejemplo: la mayoría de las clases derivadas) del objeto especificado. El análisis exacto utilizado es específico del host de depuración y puede incluir RTTI (información de tipo de tiempo de ejecución de C++), examen de la estructura V-Table(tabla de funciones virtuales) del objeto, o cualquier otro medio que el host pueda usar para determinar de forma confiable el tipo dinámico o en tiempo de ejecución desde el tipo estático. Si no se realiza la conversión a un tipo en tiempo de ejecución, no significa que se producirá un error en esta llamada al método. En tales casos, el método devolverá el objeto especificado (el puntero este) en el argumento de salida.
Sintaxis
HRESULT TryCastToRuntimeType(
_COM_Errorptr_ IModelObject **runtimeTypedObject
);
Parámetros
runtimeTypedObject
La conversión del objeto especificado a una instancia de su tipo dinámico/en tiempo de ejecución se devolverá en este argumento. Si el análisis no encuentra un cambio en el tipo estático, es posible que el objeto especificado (este puntero) se devuelva (con una referencia adicional) en esta salida.
Valor devuelto
Este método devuelve HRESULT que indica éxito o error. Tenga en cuenta que un análisis que no encuentra un tipo derivado no es un error tal como se define aquí.
Observaciones
de ejemplo de código de
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 |
---|---|
encabezado de | dbgmodel.h |