C++ 这是什么语法?C++;

C++ 这是什么语法?C++;,c++,c++11,syntax,C++,C++11,Syntax,在这一问题上: 在C++中显示委托的实现,这是什么语法: template<class R, class ...A> class delegate<R (A...)> // <--- Argument wrapping of some kind? 模板 类委托//这是函数的模板专门化 template <class T> struct func; template <class R, class... A> struct func<

在这一问题上: 在C++中显示委托的实现,这是什么语法:

template<class R, class ...A>
 class delegate<R (A...)> // <--- Argument wrapping of some kind?
模板

类委托//这是函数的模板专门化

template <class T>
struct func;

template <class R, class... A>
struct func<R (A...)>
{

};
模板
结构函数;
模板
结构函数
{
};
如果使用函数签名实例化模板,将调用专门化。例如:

func<void(int)> f1;
func<int(int, int)> f2;
func-f1;
func-f2;

看起来像一个函数定义(比如
std::function
):它接受多个类型为
a
(这里
a
是一个可变模板参数)的参数,并返回
R
。因此它变成了一个单一类型的函数ptr?@user45681确切地说,类型是函数,而不是指向函数的指针。这是一个。类template
delegate
专用于其模板参数为函数类型的情况。