std::tuple apply multiplier

include

include

include

template constexpr auto tuple_apply_impl(const T& t, F&& f, std::index_sequence) { return std::make_tuple(std::invoke(std::forward(f), std::get(t))...); }

template constexpr auto tuple_apply(const std::tuple& t, F&& f) { return tuple_apply_impl(t, std::forward(f), std::index_sequence_for{}); }

int main() { std::tuple t{1, 2.5f, 3.14}; auto result = tuple_apply(t, { return x * 2; });

std::cout << std::get<0>(result) << " " << std::get<1>(result) << " " << std::get<2>(result) << std::endl;

return 0;

}