У меня есть вариативный шаблон, который представляет собой список параметров функции, например:
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» для использования в вариационном шаблоне?
Примечание. Я должен использовать метод вариативного шаблона, потому что в шаблоне он по очереди выполняет обработку каждого типа аргумента.