11

Given a variadic template Types..., I would like to store A<> for each of the types in the pack. This could be done in a tuple of A<>'s, but I'd need to programmatically derive the type of said tuple.

Is such a thing even possible in c++11/14/17?

template <class T> class A { };

template <class... Types>
class B
{
   // A tuple of A<>'s for each type in Types...
   std::tuple<A<Type1>, A<Type2>, ...> data;
};
Stijn Frishert
  • 1,543
  • 1
  • 11
  • 32

1 Answers1

20

Simply with:

template <class... Types>
class B
{
   std::tuple<A<Types>...> data;
};
Jarod42
  • 203,559
  • 14
  • 181
  • 302