重複の可能性:
「… …」トークンの意味は何ですか?
libc++ の header を調べている<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 { };
さらに 3 組の特殊化 ( const、volatileおよびconst volatileバリエーション) があり、すべて同じ方法で行われます。
2 つの省略記号演算子がグループ化されているように見えます。私が見つけた唯一の言及はcplusplus.com_ArgTypes... ...で、スペース ( ) またはコンマ ( )で書くこともできると書かれていますが、それが_ArgTypes..., ...何を意味するのかについての説明はありません。
では、この構文は何を意味するのでしょうか。このような専門分野の目的は何ですか?