関数のパラメーターのリストを表す可変個引数テンプレートがあります。
void myFunc (int,int,std::string) { }
template<typename... Args> class MyTemplateClass { };
...
MyTemplateClass<int,int,std::string> myConcrete; // for use with myFunc later
decltype(func) から引数の型だけを抽出して、手動で記述する必要をなくす方法はありますか。たとえば、次のようになります。
MyTemplateClass<something_like_decltype(myFunc)> myConcrete;
つまり、この場合の decltype は "void(int,int,string)" を返しますが、可変個引数テンプレートで使用するために "int,int,string" 部分だけを抽出する方法はありますか?
注: 可変個引数テンプレート メソッドを使用する必要があります。これは、テンプレート内で各引数の型に対して順番に処理を実行するためです。