ArgTraits 结构

支持 WRL基础结构,不应在代码中直接使用。

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

参数

  • TMemberFunction
    不能匹配的 ArgTraits 结构参数的 Typename 任何调用方法签名。

  • TDelegateInterface
    委托接口。

  • TArg1
    调用方法的第一个参数的类型。

  • TArg2
    调用方法的第一个参数的类型。

  • TArg3
    调用方法的第三个参数的类型。

  • TArg4
    调用方法的第四个参数的类型。

  • TArg5
    调用方法的第五个参数的类型。

  • TArg6
    调用方法的第六个参数的类型。

  • TArg7
    调用方法的第七个参数的类型。

  • TArg8
    调用方法的第八个参数的类型。

  • TArg9
    调用方法的第九个参数的类型。

备注

ArgTraits 结构声明委托指定的接口并具有参数指定数量的一个匿名成员函数。

成员

公共 Typedef

名称

说明

Arg1Type

TArg1 的 typedef。

Arg2Type

TArg2 的 typedef。

Arg3Type

TArg3 的 typedef。

Arg4Type

TArg4 的 typedef。

Arg5Type

TArg5 的 typedef。

Arg6Type

TArg6 的 typedef。

Arg7Type

TArg7 的 typedef。

Arg8Type

TArg8 的 typedef。

Arg9Type

TArg9 的 typedef。

公共常量

名称

说明

ArgTraits::args 常量

数数目参数数量。委托接口的调用方法。

继承层次结构

ArgTraits

要求

**标头:**event.h

Microsoft::WRL::Details命名空间:

请参见

参考

Microsoft::WRL::Details 命名空间