IPreferredRuntimeTypeConcept 接口 (dbgmodel.h)

如果客户端可以为给定类型提供更好的动态运行时类型分析,则客户端可以实现的接口,而不是调试器通过 RTTI 或 v 表分析获取的动态运行时类型分析。

对象更了解派生自它的类型,而不是基础类型系统能够提供并想要处理其自己的从静态到运行时类型的转换。

继承

IPreferredRuntimeTypeConcept 继承自 IUnknown。

方法

IPreferredRuntimeTypeConcept 接口具有这些方法。

 
IPreferredRuntimeTypeConcept::AddRef

IPreferredRuntimeTypeConcept::AddRef 方法递增对象上接口的引用计数。
IPreferredRuntimeTypeConcept::CastToPreferredRuntimeType

了解每当客户端尝试从静态类型实例转换为该实例的运行时类型时,如何调用此方法。
IPreferredRuntimeTypeConcept::QueryInterface

了解每当客户端要尝试转换为运行时类型实例时,如何调用 CastToPreferredRuntimeType 方法。
IPreferredRuntimeTypeConcept::Release

IPreferredRuntimeTypeConcept::Release 方法递减对象上接口的引用计数。

注解

首选运行时类型概念

可以查询调试主机,以尝试从符号信息中找到的静态类型确定对象的实际运行时类型。 此转换可能基于完全准确的信息 (例如:C++ RTTI) ,也可以基于强启发(例如对象中任何虚拟函数表的形状)。 但是,某些对象无法从静态类型转换为运行时类型,因为它们不适合调试主机的启发式 (例如:它们) 没有 RTTI 或虚拟函数表。 在这种情况下,对象的数据模型可以选择替代默认行为,并声明它比调试主机能够理解的更了解对象的“运行时类型”。 这是通过首选运行时类型概念和支持 IPreferredRuntimeTypeConcept 接口完成的。

要求

要求
Header dbgmodel.h

另请参阅

调试器数据模型 C++ 概述