Мне не нужен служебный указатель указателя функции, я просто хочу, чтобы тот же код для двух разных функций с одной и той же сигнатурой:
void f(int x);
void g(int x);
...
template<typename F>
void do_work()
{
int v = calculate();
F(v);
}
...
do_work<f>();
do_work<g>();
Возможно ли это?
Чтобы устранить возможную путаницу: с "параметром шаблона" я имею в виду параметр/аргумент шаблона и не параметр функции, тип которого настроен templated.