Witam
Da się w jakiś sposób przekazać typ do szablonu tak, że ten typ musi być wskaźnikiem na funkcję i tak, żeby potem można było wyodrębnić typ listy argumentów tego wskaźnika na funkcję?
Wiem, że można po prostu tak:
template<typename FunctionType, typename ...FunctionArgs>
class A{
public:
void func(FunctionType f, FunctionArgs... args){
f(args...);
}
};
void func(int a){
...
}
...
A<void(*)(int), int> a;
a.func(func, 45);
Jednakże coś takiego nie gwarantuje, że FunctionArgs... będzie odpowiednie dla FunctionType. Jest to również niewygodne, bo trzeba pisać jakby dwa razy to samo.
Z góry dziękuje za pomoc.