Freigeben über


winrt::delegate-Strukturvorlage (C++/WinRT)

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

Der Stellvertretungstyp verfügt über keine ABI (es verfügt über keine Schnittstelle für die Verwendung über Anwendungs-Binärdateien), sodass sein Einsatzfall beim Erstellen und Verwenden eines Ereignisses innerhalb desselben Projekts erfolgt. Weitere Details zu diesem Szenario finden Sie unter Parameterisierte Stellvertretungen, einfache Signale und Rückrufe innerhalb eines Projekts.

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

Syntax

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

Vorlagenparameter

typename... T Ein variadisches Vorlagenparameterpaket mit den Typen der Parameter, die der Stellvertretung übergeben wird, wenn er aufgerufen wird.

Anforderungen

Mindest unterstützte SDK: Windows SDK Version 10.0.17134.0 (Windows 10, Version 1803)

Namespace: winrt

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

Konstruktoren

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

Memberoperatoren

Operator BESCHREIBUNG
delegate::operator() (Funktionsaufrufoperator) Ruft den durch das Stellvertretungsobjekt dargestellten Stellvertretung mit den angegebenen Argumenten auf.

delegate::d elegate-Konstruktor

Initialisiert eine neue Instanz der Stellvertretung 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 Lambda-Funktionstyp.

typename F Ein kostenloser Funktionstyp.

typename O Ein Objekttyp.

typename M Ein Zeiger-zu-Member-Funktionstyp.

Parameter

lHandler Eine Lambdafunktion, die das Ereignis behandelt.

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

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

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

delegate::operator() (Funktionsaufrufoperator)

Ruft den durch das Stellvertretungsobjekt dargestellten Stellvertretung mit den angegebenen Argumenten auf.

Syntax

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

Siehe auch