こういうことがやりたい
template <class... Args> void do_something(Args&&...) { } template <class... Args> class functor { std::tuple<Args...> args_; public: functor(Args&&... args) : args_(std::move(args)...) {} // 可変引数をメンバに保持しておいて void operator()() const { // 保持しておいた可変引数を別な関数に渡す do_something(args_...); } };
tupleを可変引数に変換(展開)、とかできないかなー