共用方式為


ImplementsHelper 結構

支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。

語法

template <typename RuntimeClassFlagsT, typename ILst, bool IsDelegateToClass>
friend struct Details::ImplementsHelper;

參數

RuntimeClassFlagsT
旗標的欄位,指定一或多個 RuntimeClassType 列舉值。

ILst
介面識別碼的清單。

IsDelegateToClass
指定 true 目前的實體Implements是否為 ILst第一個介面識別碼的基類,否則為 false

備註

協助實作 Implements 結構。

此範本會周遊介面清單,並將其新增為基類,以及啟用 QueryInterface所需的資訊。

成員

受保護的方法

名稱 描述
ImplementsHelper::CanCastTo 取得指定介面識別碼的指標。
ImplementsHelper::CastToUnknown 取得目前 Implements 結構之基礎IUnknown介面的指標。
ImplementsHelper::FillArrayWithIid 將目前第零個樣板參數指定的介面識別碼插入指定的陣列元素中。
ImplementsHelper::IidCount 保留目前 Implements 對象中實作的介面標識碼數目。

繼承階層架構

ImplementsHelper

需求

標頭: implements.h

命名空間: Microsoft::WRL::D etails

ImplementsHelper::CanCastTo

支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。

HRESULT CanCastTo(
   REFIID riid,
   _Deref_out_ void **ppv
);

HRESULT CanCastTo(
   _In_ const IID &iid,
   _Deref_out_ void **ppv
);

參數

riid
介面識別碼的參考。

ppv
如果這項作業成功,則為riid或iid所指定介面的指標。

iid
介面識別碼的參考。

傳回值

如果作業成功,會傳送 S_OK;反之則傳送表示錯誤的 HRESULT 值。

備註

取得指定介面識別碼的指標。

ImplementsHelper::CastToUnknown

支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。

IUnknown* CastToUnknown();

傳回值

基礎 IUnknown 介面的指標。

備註

取得目前 Implements 結構之基礎IUnknown介面的指標。

ImplementsHelper::FillArrayWithIid

支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。

void FillArrayWithIid(
   _Inout_ unsigned long *index,
   _Inout_ IID* iids) throw();

參數

index
以零起始的索引,表示這項作業的起始數位專案。 當此作業完成時, 索引 會遞增 1。

iids
IID 類型的陣列。

備註

將目前第零個樣板參數指定的介面識別碼插入指定的陣列元素中。

ImplementsHelper::IidCount

支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。

static const unsigned long IidCount;

備註

保留目前 Implements 對象中實作的介面標識碼數目。