Implements 構造体
指定されたインターフェイスの実装と QueryInterface GetIid。
template <
typename I0,
typename I1 = Details::Nil,
typename I2 = Details::Nil,
typename I3 = Details::Nil,
typename I4 = Details::Nil,
typename I5 = Details::Nil,
typename I6 = Details::Nil,
typename I7 = Details::Nil,
typename I8 = Details::Nil,
typename I9 = Details::Nil
>
struct __declspec(novtable) Implements : Details::ImplementsHelper<RuntimeClassFlags<WinRt>, typename Details::InterfaceListHelper<I0, I1, I2, I3, I4, I5, I6, I7, I8, I9>::TypeT>, Details::ImplementsBase;
template <
int flags,
typename I0,
typename I1,
typename I2,
typename I3,
typename I4,
typename I5,
typename I6,
typename I7,
typename I8
>
struct __declspec(novtable) Implements<RuntimeClassFlags<flags>, I0, I1, I2, I3, I4, I5, I6, I7, I8> : Details::ImplementsHelper<RuntimeClassFlags<flags>, typename Details::InterfaceListHelper<I0, I1, I2, I3, I4, I5, I6, I7, I8>::TypeT>, Details::ImplementsBase;
パラメーター
I0
zeroth インターフェイス ID(必須)I1
最初のインターフェイス ID(オプション)I2
2 番目のインターフェイス ID(オプション)I3
3 番目のインターフェイス ID(オプション)I4
4 番目のインターフェイス ID(オプション)I5
5 番目のインターフェイス ID(オプション)I6
6 番目のインターフェイス ID(オプション)I7
7 番目のインターフェイス ID(オプション)I8
8 番目のインターフェイス ID(オプション)I9
9 番目のインターフェイス ID(オプション)flags
クラスの構成のフラグ。RuntimeClassFlags の構造体に指定された RuntimeClassType の一つ以上の列挙。
解説
指定されたインターフェイスの一覧から派生し、 QueryInterface と GetIid のヘルパー テンプレートを実行します。
I9 インターフェイス パラメーターによる各 I0 は、 IUnknown IInspectable、または ChainInterfaces テンプレートから派生する必要があります。flags パラメーターはサポートが IUnknown か IInspectable に対して生成されるかどうかを判定します。
メンバー
パブリック typedef
名前 |
Description |
---|---|
ClassFlags |
RuntimeClassFlags<WinRt>のシノニム。 |
プロテクト メソッド
名前 |
Description |
---|---|
指定されたインターフェイスへのポインターを取得します。 |
|
IUnknown を基のインターフェイス ポインターを取得します。 |
|
現在の zeroth テンプレート パラメーターで指定された指定された配列の要素にインターフェイス ID を挿入します。 |
プロテクト コンストラクター
名前 |
Description |
---|---|
実装されたインターフェイスの ID の数を保持します。 |
継承階層
I0
ChainInterfaces
I0
ImplementsBase
ImplementsHelper
Implements
必要条件
ヘッダー: implements.h
Microsoft名前空間: :: WRL