【发布时间】:2020-06-04 17:20:35
【问题描述】:
我有类似的东西:
template<int ... args>
class X{};
并希望将该类作为参数传递给第二个模板类。 现在我有:
template<class X<int... args1> el1, class X<int... args2> el2>
class Y{};
编译器向我抛出错误Pack expansion does not contain any unexpanded parameter packs,我真的不知道我该怎么办...我已经尝试了很多int ... 和args 的可能顺序,但它仍然不是在职的。我怎样才能让它工作?
我想做这样一段代码编译
Y<X<1,2>,X<3,4>> el;
【问题讨论】:
-
请在问题中包含错误
-
如果你只想使用类名而不是模板参数,你可以直接使用
template<class el1, class el2> class Y{}。 -
我需要访问 args
-
请用用例编辑你的问题,即你想如何使用这个类。
标签: c++ templates c++17 variadic-templates