次の方法で共有


InvokeHelper 構造体

WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。

構文

template<typename TDelegateInterface, typename TCallback, unsigned int argCount>
struct InvokeHelper;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 0> :
    public Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 1> :
    public Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 2> :
    public Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 3> :
    public Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 4> :
    Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 5> :
    Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 6> :
    Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 7> :
    Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 8> :
    Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

template<typename TDelegateInterface, typename TCallback>
struct InvokeHelper<TDelegateInterface, TCallback, 9> :
    Microsoft::WRL::RuntimeClass<
        RuntimeClassFlags<Delegate>,
        TDelegateInterface
    >;

パラメーター

TDelegateInterface
デリゲート インターフェイス型。

TCallback
イベント ハンドラー関数の型。

argCount
InvokeHelper 特殊化の引数の数。

解説

指定された引数の数と型に基づいて、Invoke() メソッドの実装を提供します。

メンバー

パブリック typedef

名前 説明
Traits 各イベント ハンドラーの引数の型を定義するクラスの同意語。

パブリック コンストラクター

名前 説明
InvokeHelper::InvokeHelper InvokeHelper クラスの新しいインスタンスを初期化します。

パブリック メソッド

名前 説明
InvokeHelper::Invoke 指定された数の引数を含むシグネチャを持つイベント ハンドラーを呼び出します。

パブリック データ メンバー

名前 説明
InvokeHelper::callback_ イベントが発生したときに呼び出されるイベント ハンドラーを表します。

継承階層

InvokeHelper

必要条件

ヘッダー: event.h

名前空間: Microsoft::WRL::Details

InvokeHelper::callback_

WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。

TCallback callback_;

解説

イベントが発生したときに呼び出されるイベント ハンドラーを表します。

TCallback テンプレート パラメーターはイベント ハンドラーの型を指定します。

InvokeHelper::Invoke

WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。

STDMETHOD(
   Invoke
)();
STDMETHOD(
   Invoke
)(typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;
STDMETHOD(
   Invoke
)( typename Traits;

パラメーター

arg1
引数 1。

arg2
引数 2。

arg3
引数 3。

arg4
引数 4。

arg5
引数 5。

arg6
引数 6。

arg7
引数 7。

arg8
引数 8。

arg9
引数 9。

戻り値

成功した場合は S_OK、そうでない場合はエラーを示す HRESULT。

解説

指定された数の引数を含むシグネチャを持つイベント ハンドラーを呼び出します。

InvokeHelper::InvokeHelper

WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。

explicit InvokeHelper(
   TCallback callback
);

パラメーター

callback
イベント ハンドラー。

解説

InvokeHelper クラスの新しいインスタンスを初期化します。

TCallback テンプレート パラメーターはイベント ハンドラーの型を指定します。