如何将将参数包作为参数传递给其他模板类的模板类?
how can i pass template class which take parameter pack to other template class as a parameter?
我有这样的东西:
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<template <int... args1> typename el1,
template <int... args2> typename el2>
class Y{};
请注意,在 c++17 之前,您必须在此处使用关键字class
而不是typename
。
相关文章:
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 使用指向成员的指针将成员函数作为参数传递
- 如何将参数传递给正在使用模板的类
- 是否有C++编译器选项允许激进地删除所有函数调用,并将参数传递给具有空体的函数
- 修改函数中的指针(将另一个指针作为参数传递)
- 如何将部分流作为参数传递
- 我正在开发服务器,ip作为参数传递不起作用
- 将成员函数指针作为参数传递给模板方法
- 如何在C++中将迭代器作为函数参数传递
- 将附加参数传递给使用 beast::bind_front_handler 调用的函数
- 如何将将参数包作为参数传递给其他模板类的模板类?
- 将成员函数作为参数传递给其他成员函数 (C++ 11 <function>)
- 将指针类方法作为参数传递给其他类方法C
- 在传递其他参数时在 C++ 中重载运算符
- 将标头中定义的 MyClass 作为函数参数传递给其他文件
- 将字符串(或任何其他参数)传递到QWidget构造函数
- 使用 boost::bind 但允许传递任何其他参数
- C++:将类作为参数传递给其他类的方法
- 如何将其他类型的默认参数传递给参数
- 在c++中,如何在传递一些参数的同时将其他参数保留为默认值?