Plantilla de estructura winrt::event (C++/WinRT)
Tipo que puede usar para declarar e implementar un evento de un tipo delegado especificado. Los suscriptores pasan sus delegados de control de eventos a un evento; el evento registra esos delegados en una colección; después, cuando se genera, el evento invoca a sus delegados registrados a su vez para que los suscriptores puedan controlar el evento. Para obtener más información sobre la creación de eventos y ejemplos de código, consulta Crear eventos en C++/WinRT.
Si necesita eventos internos en el proyecto y no se limita a Windows Runtime tipos, use eventwinrt<::d elegate>. Para obtener más información, consulta Delegados con parámetros, señales simples y devoluciones de llamada dentro de un proyecto.
Para obtener más información sobre cómo controlar eventos y ejemplos de código, consulta Controlar eventos mediante delegados en C++/WinRT.
Sintaxis
template <typename Delegate>
struct event
Parámetros de plantilla
typename Delegate
Tipo de delegado que se puede registrar para controlar el evento.
Requisitos
SDK mínimo admitido: sdk de Windows versión 10.0.17134.0 (Windows 10, versión 1803)
Espacio de nombres: winrt
Encabezado: %WindowsSdkDir%IncludeWindowsTargetPlatformVersion<>\cppwinrt\winrt\base.h (incluido de forma predeterminada)
Alias de tipo de miembro
Nombre de alias | Tipo |
---|---|
event::d elegate_type | Sinónimo del parámetro de typename Delegate plantilla. |
Constructores
Constructor | Descripción |
---|---|
event::event (Constructor) | Inicializa una nueva instancia de la estructura de eventos . |
Funciones miembro
Función | Descripción |
---|---|
event::add (función) | Registra un delegado con el objeto de evento . |
event::remove (función) | Revoca el registro de un delegado del objeto de evento . |
Operadores de miembro
Operator | Descripción |
---|---|
event::operator() (operador de llamada de función) | Invoca todos los delegados registrados del objeto de evento con los argumentos proporcionados. |
event::operator bool | Comprueba si el objeto de evento tiene delegados registrados en él. |
event::event (Constructor)
Inicializa una nueva instancia de la estructura de eventos .
Sintaxis
event();
event::add (función)
Registra un delegado con el objeto de evento .
Sintaxis
winrt::event_token add(Delegate const& delegate);
Parámetros
delegate
Delegado que se va a registrar con el objeto de evento .
Valor devuelto
Winrt::event_token que se puede usar posteriormente para revocar el registro del delegado.
event::operator() (operador de llamada de función)
Invoca todos los delegados registrados del objeto de evento con los argumentos proporcionados.
Sintaxis
template<typename... Arg>
void operator()(Arg const&... args)
Parámetros de plantilla
typename... Arg
Paquete de parámetros de plantilla variádica que contiene los tipos de los parámetros que el delegado se pasa cuando se llama a él.
Parámetros
args
Lista de argumentos variables que contiene los argumentos que el delegado se pasa cuando se llama a él.
event::operator bool
Comprueba si el objeto de evento tiene delegados registrados en él.
Sintaxis
explicit operator bool() const noexcept;
Valor devuelto
true
es si el objeto de evento tiene delegados registrados; de lo contrario false
, es .
event::remove (función)
Revoca el registro de un delegado del objeto de evento .
Sintaxis
void remove(winrt::event_token const token);
Parámetros
token
Winrt::event_token que identifica el delegado cuyo registro se va a revocar.