modello di struct winrt::event (C++/WinRT)

Tipo che è possibile usare per dichiarare e implementare un evento di un tipo delegato specificato. I sottoscrittori passano i delegati di gestione degli eventi a un evento; l'evento registra tali delegati in una raccolta; quindi, quando viene generato, l'evento richiama i delegati registrati a sua volta in modo che i sottoscrittori possano gestire l'evento. Per altre informazioni sulla creazione di eventi e esempi di codice, vedere Creare eventi in C++/WinRT.

Se sono necessari eventi interni al progetto e non sono limitati ai tipi di Windows Runtime, usare eventwinrt<::d elegate>. Per altre informazioni, vedere Delegati con parametri, segnali semplici e callback all'interno di un progetto.

Per altre informazioni sulla gestione degli eventi e sugli esempi di codice, vedere Gestire gli eventi usando delegati in C++/WinRT.

Sintassi

template <typename Delegate>
struct event

Parametri di modelli

typename Delegate Tipo di delegato che può registrare per gestire l'evento.

Requisiti

SDK minimo supportato: Windows SDK versione 10.0.17134.0 (Windows 10, versione 1803)

Spazio dei nomi: winrt

Intestazione: %WindowsSdkDir%IncludeWindowsTargetPlatformVersion<>\cppwinrt\winrt\base.h (incluso per impostazione predefinita)

Alias del tipo di membro

Nome alias Tipo
event::d elegate_type Sinonimo del typename Delegate parametro modello.

Costruttori

Costruttore Descrizione
Costruttore event::event Inizializza una nuova istanza dello struct dell'evento .

Funzioni membro

Funzione Descrizione
event::add function Registra un delegato con l'oggetto evento .
funzione event::remove Revoca la registrazione di un delegato dall'oggetto evento .

Operatori membri

Operatore Descrizione
event::operator() (operatore di chiamata alla funzione) Richiama tutti i delegati registrati dell'oggetto evento con gli argomenti specificati.
event::operator bool Verifica se l'oggetto evento ha tutti i delegati registrati.

Costruttore event::event

Inizializza una nuova istanza dello struct dell'evento .

Sintassi

event();

event::add function

Registra un delegato con l'oggetto evento .

Sintassi

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

Parametri

delegate Delegato da registrare con l'oggetto evento .

Valore restituito

Winrt::event_token che può essere usato successivamente per revocare la registrazione del delegato.

event::operator() (operatore di chiamata alla funzione)

Richiama tutti i delegati registrati dell'oggetto evento con gli argomenti specificati.

Sintassi

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

Parametri di modelli

typename... Arg Pacchetto di parametri di modello variadic contenente i tipi dei parametri passati dal delegato quando viene chiamato.

Parametri

args Elenco di argomenti variabile contenente gli argomenti passati dal delegato quando viene chiamato.

event::operator bool

Verifica se l'oggetto evento ha tutti i delegati registrati.

Sintassi

explicit operator bool() const noexcept;

Valore restituito

true se l'oggetto evento ha delegati registrati, in caso contrario false.

funzione event::remove

Revoca la registrazione di un delegato dall'oggetto evento .

Sintassi

void remove(winrt::event_token const token);

Parametri

tokenWinrt::event_token che identifica il delegato di cui revocare la registrazione.

Vedi anche