#include #include #include int main() { auto f = [](int a, int b) { return a+b; }; auto args1 = std::tuple{1,2}; auto args2 = std::pair{3,4}; auto args3 = std::array{5,6}; std::cout << std::apply(f, args1) << '\n'; // f(1,2) std::cout << std::apply(f, args2) << '\n'; // f(3,4) std::cout << std::apply(f, args3) << '\n'; // f(5,6) }