ArgTraits-Struktur
Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.
Syntax
template<typename TMemberFunction>
struct ArgTraits;
template<typename TDelegateInterface>
struct ArgTraits<HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)(void)>;
template<typename TDelegateInterface, typename TArg1>
struct ArgTraits<HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)(TArg1)>;
template<typename TDelegateInterface, typename TArg1, typename TArg2>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)(TArg1, TArg2)>;
template<
typename TDelegateInterface,
typename TArg1,
typename TArg2,
typename TArg3
>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)(TArg1, TArg2, TArg3)>;
template<
typename TDelegateInterface,
typename TArg1,
typename TArg2,
typename TArg3,
typename TArg4
>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)
(TArg1, TArg2, TArg3, TArg4)>;
template<
typename TDelegateInterface,
typename TArg1,
typename TArg2,
typename TArg3,
typename TArg4,
typename TArg5
>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)
(TArg1, TArg2, TArg3, TArg4, TArg5)>;
template<
typename TDelegateInterface,
typename TArg1,
typename TArg2,
typename TArg3,
typename TArg4,
typename TArg5,
typename TArg6
>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)
(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6)>;
template<
typename TDelegateInterface,
typename TArg1,
typename TArg2,
typename TArg3,
typename TArg4,
typename TArg5,
typename TArg6,
typename TArg7
>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)
(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7)>;
template<
typename TDelegateInterface,
typename TArg1,
typename TArg2,
typename TArg3,
typename TArg4,
typename TArg5,
typename TArg6,
typename TArg7,
typename TArg8
>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)
(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TArg8)>;
template<
typename TDelegateInterface,
typename TArg1,
typename TArg2,
typename TArg3,
typename TArg4,
typename TArg5,
typename TArg6,
typename TArg7,
typename TArg8,
typename TArg9
>
struct ArgTraits<
HRESULT (STDMETHODCALLTYPE TDelegateInterface::*)
(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TArg8, TArg9)>;
Parameter
TMemberFunction
Typename-Parameter für eine ArgTraits-Struktur, die keiner Invoke
Methodensignatur entsprechen kann.
TDelegateInterface
Eine Stellvertretungsschnittstelle.
TArg1
Der Typ des ersten Arguments der Invoke
Methode.
TArg2
Der Typ des zweiten Arguments der Invoke
Methode.
TArg3
Der Typ des dritten Arguments der Invoke
Methode.
TArg4
Der Typ des vierten Arguments der Invoke
Methode.
TArg5
Der Typ des fünften Arguments der Invoke
Methode.
TArg6
Der Typ des sechsten Arguments der Invoke
Methode.
TArg7
Der Typ des siebten Arguments der Invoke
Methode.
TArg8
Der Typ des achten Arguments der Invoke
Methode.
TArg9
Der Typ des neunten Arguments der Invoke
Methode.
Hinweise
Die ArgTraits
Struktur deklariert eine angegebene Delegatschnittstelle und eine anonyme Memberfunktion mit einer angegebenen Anzahl von Parametern.
Member
Öffentliche Typedefs
Name | Beschreibung |
---|---|
Arg1Type |
Der Typedef für TArg1. |
Arg2Type |
Der Typedef für TArg2. |
Arg3Type |
Der Typedef für TArg3. |
Arg4Type |
Der Typedef für TArg4. |
Arg5Type |
Der Typedef für TArg5. |
Arg6Type |
Der Typedef für TArg6. |
Arg7Type |
Der Typedef für TArg7. |
Arg8Type |
Der Typedef für TArg8. |
Arg9Type |
Der Typedef für TArg9. |
Öffentliche Konstanten
Name | Beschreibung |
---|---|
ArgTraits::args | Die Anzahl der Parameter auf der Invoke Methode einer Stellvertretungsschnittstelle wird beibehalten. |
Vererbungshierarchie
ArgTraits
Anforderungen
Header: event.h
Namespace: Microsoft::WRL::D etails
ArgTraits::args
Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.
static const int args = -1;
Hinweise
Die Anzahl der Parameter auf der Invoke
Methode einer Stellvertretungsschnittstelle wird beibehalten. Wenn args
gleich -1 ist, kann keine Übereinstimmung für die Invoke
Methodensignatur vorhanden sein.