RuntimeClassBaseT 结构

支持 WRL 基础结构,不应在代码中直接使用。

语法

template <unsigned int RuntimeClassTypeT>
friend struct Details::RuntimeClassBaseT;

参数

RuntimeClassTypeT
一个标志字段,指定一个或多个 RuntimeClassType 枚举器。

备注

提供 QueryInterface 操作和获取接口 ID 的帮助程序方法。

成员

受保护方法

名称 描述
RuntimeClassBaseT::AsIID 检索指向指定接口 ID 的指针。
RuntimeClassBaseT::GetImplementedIIDS 检索由指定类型实现的接口 ID 数组。

继承层次结构

RuntimeClassBaseT

要求

标头:implements.h

命名空间:Microsoft::WRL::Details

RuntimeClassBaseT::AsIID

支持 WRL 基础结构,不应在代码中直接使用。

template<typename T>
__forceinline static HRESULT AsIID(
   _In_ T* implements,
   REFIID riid,
   _Deref_out_ void **ppvObject
);

参数

T
实现由参数 riid 指定的接口 ID 的类型

implements
模板参数 T 指定的类型的变量

riid
要检索的接口 ID。

ppvObject
如果此操作成功,则为指向由参数 riid 指定的接口的二级指针

返回值

如果成功,则为 S_OK;否则为描述错误的 HRESULT。

注解

检索指向指定接口 ID 的指针。

RuntimeClassBaseT::GetImplementedIIDS

支持 WRL 基础结构,不应在代码中直接使用。

template<typename T>
__forceinline static HRESULT GetImplementedIIDS(
   _In_ T* implements,
   _Out_ ULONG *iidCount,
   _Deref_out_ _Deref_post_cap_(*iidCount) IID **iids
);

参数

T
implements 参数的类型

implements
指向由参数 T 指定的类型的指针

iidCount
要检索的最大接口 ID 数。

iids
如果此操作成功完成,则为由 T 类型实现的接口 ID 的数组

返回值

如果成功,则为 S_OK;否则为描述错误的 HRESULT。

注解

检索由指定类型实现的接口 ID 数组。