IModelObject::TryCastToRuntimeType 메서드(dbgmodel.h)

TryCastToRuntimeType 메서드는 디버그 호스트에게 분석을 수행하고 지정된 개체의 실제 런타임 형식(예: 대부분의 파생 클래스)을 결정하도록 요청합니다. 사용된 정확한 분석은 디버그 호스트와 관련이 있으며 RTTI(C++ 런타임 형식 정보), 개체의 V-Table(가상 함수 테이블) 구조 검사 또는 호스트가 정적 형식에서 동적/런타임 형식을 안정적으로 확인하는 데 사용할 수 있는 기타 수단을 포함할 수 있습니다. 런타임 형식으로 변환하지 않는다고 해서 이 메서드 호출이 실패한다는 의미는 아닙니다. 이러한 경우 메서드는 출력 인수에서 지정된 개체(이 포인터)를 반환합니다.

구문

HRESULT TryCastToRuntimeType(
  _COM_Errorptr_ IModelObject **runtimeTypedObject
);

매개 변수

runtimeTypedObject

지정된 개체를 해당 동적/런타임 형식의 instance 변환하는 것이 이 인수에 반환됩니다. 분석에서 정적 형식의 변경 내용을 찾지 못하면 지정된 개체(이 포인터)가 이 출력에서 (추가 참조를 사용하여) 반환된 것일 수 있습니다.

반환 값

이 메서드는 성공 또는 실패를 나타내는 HRESULT를 반환합니다. 파생 형식을 찾을 수 없는 분석은 여기에 정의된 대로 실패하지 않습니다.

설명

코드 예제

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

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

요구 사항

요구 사항
헤더 dbgmodel.h

추가 정보

IModelObject 인터페이스