可能重复:
“……”令牌的含义是什么?
有一种相对较新的方法可以直接指定函数类型(至少,作为模板参数)。不知道这是否是严格的 C++11,但我在阅读 GCC 4.7 的 STL 标头时遇到了它。
就像这样:
std::function<void(int, char**)> f;
现在,在头文件<functional>
中,我看到以下内容:
template <typename R, typename... A>
struct SomeStruct<R(A...)> { /* */ };
这是可以理解的:SomeStruct
具有返回类型R
和参数类型的函数类型的显式特化A
。
但是考虑这个声明(在下一行):
template <typename R, typename... A>
struct SomeStruct<R(A......)> { /* */ };
那个双省略号是什么意思?