次の方法で共有


winrt::event 構造体テンプレート (C++/WinRT)

指定したデリゲート型のイベントを宣言して実装するために使用できる型。 サブスクライバーは、イベント処理デリゲートをイベントに渡します。イベントは、これらのデリゲートをコレクションに登録します。その後、イベントが発生すると、サブスクライバーがイベントを処理できるように、登録されているデリゲートが順番に呼び出されます。 イベントの作成とコード例の詳細については、「 C++/WinRT でのイベントの作成」を参照してください。

プロジェクトの内部で、Windows ランタイム型に限定されないイベントが必要な場合は、eventwinrt<::d elegate> を使用します。 詳細については、「 パラメーター化されたデリゲート、単純なシグナル、およびプロジェクト内のコールバック」を参照してください。

イベントの処理とコード例の詳細については、「 C++/WinRT でデリゲートを使用してイベントを処理する」を参照してください。

構文

template <typename Delegate>
struct event

テンプレート パラメーター

typename Delegate イベントを処理するために登録できるデリゲートの型。

必要条件

サポートされている最小 SDK: Windows SDK バージョン 10.0.17134.0 (Windows 10、バージョン 1803)

名前空間: winrt

ヘッダー: %WindowsSdkDir%IncludeWindowsTargetPlatformVersion<>\cppwinrt\winrt\base.h (既定で含まれます)

メンバー型のエイリアス

エイリアス名
event::d elegate_type テンプレート パラメーターの typename Delegate シノニム。

コンストラクター

コンストラクター 説明
event::event コンストラクター イベント構造体の新しいインスタンスを初期化します。

メンバー関数

機能 説明
event::add 関数 デリゲートをイベント オブジェクトに登録します。
event::remove 関数 イベント オブジェクトからデリゲートの登録を取り消します。

メンバー演算子

演算子 説明
event::operator() (関数呼び出し演算子) 指定された引数を使用して、 イベント オブジェクトのすべての登録済みデリゲートを呼び出します。
event::operator bool イベント オブジェクトにデリゲートが登録されているかどうかを確認します。

event::event コンストラクター

イベント構造体の新しいインスタンスを初期化します。

構文

event();

event::add 関数

デリゲートをイベント オブジェクトに登録します。

構文

winrt::event_token add(Delegate const& delegate);

パラメーター

delegateイベント オブジェクトに登録するデリゲート。

戻り値

後でデリゲートの登録を取り消すために使用できる winrt::event_token

event::operator() (関数呼び出し演算子)

指定された引数を使用して、 イベント オブジェクトのすべての登録済みデリゲートを呼び出します。

構文

template<typename... Arg>
void operator()(Arg const&... args)

テンプレート パラメーター

typename... Arg デリゲートが呼び出されたときに渡されるパラメーターの型を含む可変テンプレート パラメーター パック。

パラメーター

args デリゲートが呼び出されたときに渡される引数を含む変数引数リスト。

event::operator bool

イベント オブジェクトにデリゲートが登録されているかどうかを確認します。

構文

explicit operator bool() const noexcept;

戻り値

trueイベント オブジェクトに登録済みのデリゲートがある場合は 。それ以外の場合falseは 。

event::remove 関数

イベント オブジェクトからデリゲートの登録を取り消します。

構文

void remove(winrt::event_token const token);

パラメーター

token 登録を取り消すデリゲートを識別する winrt::event_token

こちらもご覧ください