在其他模板类型中包装元组成员
问题描述:
我希望能够用模板包声明一个类,使得类本身将有一个成员变量元组,它将每个模板包成员包装在容器类型为某种。基本目标将如下所示:在其他模板类型中包装元组成员
template <typename Types...>
class VectorOfMembers
{
public:
// Member tuple where each element is expanded in a container
std::tuple<std::vector<Type[1]>, std::vector<Type[2]>, std::vector<TypeN...>>
};
理想情况下,我希望能够使用任何模板化对象作为包装类型。
答
嗯,你几乎拥有了:
template <typename... Types>
class VectorOfMembers
{
public:
// Member tuple where each element is expanded in a container
std::tuple<std::vector<Types>...> tuple;
};