My question is in the code:
template
struct TupleOfVectors {
std::tuple...> tuple;
void do_something_t
In addition to the answer of @M. Alaggan, if you need to call a function on tuple elements in order of their appearance† in the tuple, in C++17 you can also use a fold expression like this:
std::apply([](auto& ...x){(..., some_function(x));}, the_tuple);
(live example).
†Because otherwise order of evaluation of function arguments is unspecified.