winrt::d elegate-Strukturvorlage (C++/WinRT)

Ein Typ, mit dem Sie einen benutzerdefinierten Delegattyp für Ihre eigenen Ereignisse deklarieren können. delegate unterstützt eine beliebige Anzahl von Parametern und ist nicht auf Windows-Runtime Typen beschränkt.

Der Delegattyp verfügt über keine ABI (er verfügt über keine Schnittstelle für die Verwendung über Mehrere Anwendungsbinärdateien hinweg). Der Anwendungsfall ist also, wenn Sie ein Ereignis innerhalb desselben Projekts erstellen und nutzen. Weitere Informationen zu diesem Szenario finden Sie unter Parametrisierte Delegaten, einfache Signale und Rückrufe innerhalb eines Projekts.

Weitere Informationen zum Behandeln von Ereignissen und Codebeispiele finden Sie unter Behandeln von Ereignissen mithilfe von Delegaten in C++/WinRT.

Syntax

template <typename... T>
struct delegate : Windows::Foundation::IUnknown

Vorlagenparameter

typename... T Ein variadic-Vorlagenparameterpaket, das die Typen der Parameter enthält, die der Delegat beim Aufruf übergeben wird.

Anforderungen

Mindestens unterstütztes SDK: Windows SDK Version 10.0.17134.0 (Windows 10, Version 1803)

Namespace: winrt

Header: %WindowsSdkDir%Include <WindowsTargetPlatformVersion> \cppwinrt\winrt\base.h (standardmäßig enthalten)

Konstruktoren

Konstruktor BESCHREIBUNG
delegate::d elegate-Konstruktor Initialisiert eine neue Instanz der Delegatstruktur aus den Eingabedaten.

Memberoperatoren

Operator Beschreibung
delegate::operator() (Funktionsaufrufoperator) Ruft den Delegaten auf, der durch das Delegatobjekt mit den bereitgestellten Argumenten dargestellt wird.

delegate::d elegate-Konstruktor

Initialisiert eine neue Instanz der Delegatstruktur aus den Eingabedaten.

Syntax

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);

Vorlagenparameter

typename L Ein Lambdafunktionstyp.

typename F Ein kostenloser Funktionstyp.

typename O Ein Objekttyp.

typename M Ein Zeiger auf einen Memberfunktionstyp.

Parameter

lHandler Eine Lambdafunktion, die das Ereignis behandelt.

fHandler Eine Zeiger-zu-Frei-Funktion, die das Ereignis behandelt.

object Ein Zeiger auf ein Objekt, dessen Memberfunktionen das Ereignis behandeln.

method Eine Zeiger-zu-Member-Funktion, die das Ereignis behandelt.

delegate::operator() (Funktionsaufrufoperator)

Ruft den durch das Delegatobjekt dargestellten Delegaten mit den bereitgestellten Argumenten auf.

Syntax

void operator()(T const&... args) const

Weitere Informationen