#include <iostream> #include <tuple> #include <string> template<class... Args> class Hoge { private: enum { m_count = std::tuple_size<std::tuple<Args...>>::value }; std::tuple<Args...> m_tuple; public: Hoge(Args... args) { m_tuple = std::make_tuple(args...); } void Print() { // テンプレート関数。特殊化がないのでループ停止不可能な気がする… std::cout << "---個数" << m_count << "---" << std::endl; AllHoge<m_count-1, std::tuple<Args