Plantilla de estructura winrt::delegate (C++/WinRT)
Tipo que puede usar para declarar un tipo de delegado personalizado para sus propios eventos. delegate admite cualquier número de parámetros y no se limitan a Windows Runtime tipos.
El tipo de delegado no tiene ABI (no tiene ninguna interfaz para su uso en los archivos binarios de la aplicación), por lo que su caso de uso es cuando se crea y se consume un evento dentro del mismo proyecto. Para obtener más información sobre ese escenario, consulte Delegados con parámetros, señales simples y devoluciones de llamada dentro de un proyecto.
Para obtener más información sobre el control de eventos y ejemplos de código, consulta Controlar eventos mediante delegados en C++/WinRT.
Sintaxis
template <typename... T>
struct delegate : Windows::Foundation::IUnknown
Parámetros de plantilla
typename... T
Paquete de parámetros de plantilla variadic que contiene los tipos de los parámetros que el delegado se pasa cuando se llama a él.
Requisitos
SDK mínimo admitido: Windows SDK 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)
Constructores
Constructor | Descripción |
---|---|
delegate::d elegate (constructor) | Inicializa una nueva instancia del struct delegado a partir de los datos de entrada. |
Operadores de miembro
Operador | Descripción |
---|---|
delegate::operator() (operador de llamada de función) | Invoca el delegado representado por el objeto delegado con los argumentos proporcionados. |
delegate::d elegate (constructor)
Inicializa una nueva instancia del struct delegado a partir de los datos de entrada.
Sintaxis
delegate(std::nullptr_t = nullptr) noexcept;
template <typename L>
delegate(L lHandler);
template <typename F>
delegate(F* fHandler);
template <typename O, typename M>
delegate(O* object, M method);
Parámetros de plantilla
typename L
Tipo de función lambda.
typename F
Tipo de función libre.
typename O
Tipo de objeto.
typename M
Tipo de función de puntero a miembro.
Parámetros
lHandler
Función lambda, que controlará el evento.
fHandler
Una función de puntero a libre, que controlará el evento.
object
Puntero a un objeto, una de cuyas funciones miembro controlará el evento.
method
Una función de puntero a miembro, que controlará el evento.
delegate::operator() (operador de llamada de función)
Invoca el delegado representado por el objeto delegado con los argumentos proporcionados.
Sintaxis
void operator()(T const&... args) const