我有一个接受可变参数模板参数的模板类。
template <typename... Args>
class Element
{
public:
typedef std::tuple<Args...> Tuple;
Element(const Args&... args)
: mArgs(args...)
{
}
Tuple mArgs;
};
是否有可能从元组中获取Args ...以及如何?
所以我能够为这样的情况使用相同的构造函数:
Element<Foo, Bar> element1(foo, bar);
Element<Foo, Bar> element2( magic(element1.mArgs) );
答案 0 :(得分:0)
只需编写一个完全符合您要求的复制构造函数吗?
请注意,编译器生成的复制构造函数已经允许这样:
<a href="files/j24oHPqJiUR2ftK0oeNH.pdf" download="invoice.pdf">Invoice</a>
答案 1 :(得分:0)
我相信没有办法完全你想要什么。为此,您需要magic
来返回参数包。但是,参数包可能只出现在可变参数模板的上下文中。所以你需要制作一些可变参数模板包装来提供包,这不是你想要的。
但是,我们有机会在这里XY problem。因此,我建议您提供更多详细信息,以便我们可以尝试解决原始问题。