Disons que nous avons un modèle de classe comme ceci:
template<typename F>
class A
{
public:
template<typename... Args>
A(F f, Args... args)
{ /* Do something... */ }
};
Et maintenant je veux l'utiliser en quelque sorte, comme celui-ci:
A<int(int)> a(::close, 1);
Maintenant, la question: est-il possible d'omettre l' <int(int)>
parce qu'un compilateur peut connaître cette information pour l' ::close
? Il n'est pas nécessaire d'enregistrer le "design" du modèle.
Comme pour la tâche concrète, j'ai besoin de concevoir un modèle de classe. Des objets de cette classe pourrait prendre une fonction et les paramètres de cette fonction au moment de la construction et de l'appel de cette fonction plus tard.