Why can a variadic class template have at most one parameter pack?
问题 There are moments when wish I could write a class template parameterized by a punctuated list of variadic template parameter packs, e.g. template<typename ...lhs, int Punct, typename ...rhs> struct tuple_pair { std::tuple<lhs...> _lhs; std::tuple<rhs...> _rhs; }; or for that matter: template<int ...lhs, typename Punct, int ...rhs> struct seq_pair { std::integer_sequence<int,lhs...> _lhs; std::integer_sequence<int,rhs...> _rhs; }; These may very well be moments when I am wishing for a grubby