Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Boost-MPL序列和默认参数_C++_Boost_Boost Mpl - Fatal编程技术网

C++ Boost-MPL序列和默认参数

C++ Boost-MPL序列和默认参数,c++,boost,boost-mpl,C++,Boost,Boost Mpl,我目前还停留在C++03上,所以可变模板不适合我 我可以使用boost::mpl::vector和boost::mpl::inherit_线性地使用有限数量的参数来做我想做的事情,但我想做一些类似于以下的事情,这样用户就不必直接处理mpl容器: template<class T, class A1, class A2 = void_, class A3 = void_> class Foo : public FooHelper<T, boost::mpl::vector<

我目前还停留在C++03上,所以可变模板不适合我

我可以使用boost::mpl::vector和boost::mpl::inherit_线性地使用有限数量的参数来做我想做的事情,但我想做一些类似于以下的事情,这样用户就不必直接处理mpl容器:

template<class T, class A1, class A2 = void_, class A3 = void_>
class Foo : public FooHelper<T, boost::mpl::vector<A1, A2, A3>> {}
模板
类Foo:publicfoohelper{}
是否有一种魔法类型可以代替void_uu,该向量将自动解释为默认模板参数的终止符?boost::mpl::void_u实际上不起作用,序列元函数将在其上迭代


现在我有一个专门化,它捕获了我自己的terminator类,使它几乎成为层次结构中的一个不可操作的类,但我宁愿让boost将void_uuu项作为集合的结尾。

mpl::vector
(可能还有其他序列)
boost::mpl::na
表示未使用元素。谢谢。这就是我要找的。您能否将此提升为一个答案?
mpl::vector
(可能还有其他序列)
boost::mpl::na
,以指示未使用元素。谢谢。这就是我要找的。你能把这个问题推广到一个答案吗?