jro*_*rok 6 c++ variadic-templates c++11
可能重复:
"......"令牌是什么意思?
在查看libc ++的标题时<type_traits>,我偶然发现了这些类模板特化:
template<typename>
struct is_function
: public false_type { };
template<typename _Res, typename... _ArgTypes>
struct is_function<_Res(_ArgTypes...)>
: public true_type { };
template<typename _Res, typename... _ArgTypes>
struct is_function<_Res(_ArgTypes......)> // <-- Huh?
: public true_type { };
Run Code Online (Sandbox Code Playgroud)
有三个对特(的const,volatile并且const volatile变化),都以同样的方式.
它看起来像两个elipsis运算符组合在一起.我唯一能提到的就是cplusplus.com,它说它也可以用space(_ArgTypes... ...)或逗号(_ArgTypes..., ...)编写,但没有解释它的含义.
那么,这种语法意味着什么?像这样的专业化的目的是什么?