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