Deducción de la función.

Digamos que tenemos una plantilla de clase como esta:

template<typename F>
class A
{
public:
  template<typename... Args>
  A(F f, Args... args)
  { /* Do something... */ }
};

Y ahora quiero usarlo de alguna manera como esta:

A<int(int)> a(::close, 1);

Ahora la pregunta: ¿hay alguna forma de omitir el<int(int)> porque un compilador puede conocer esta información para::close? No es necesario guardar el "diseño" de la plantilla.

En cuanto a la tarea concreta, necesito diseñar una plantilla de una clase. Los objetos de esta clase podrían tomar una función y parámetros para esta función en tiempo de construcción y llamar a esta función más tarde.

Respuestas a la pregunta(3)

Su respuesta a la pregunta