Bonjour,
j'ai actuellement une classe X comme ceci :
Je voudrais en faite stocker des fonctions de tous types dans T, et les utiliser avec boost::asio::io_service::post() :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 template <typename T> struct X { X () {} X (T funct) : execute (funct) {} T execute; };
Malheureusement ça ne marche pas car il faudrait que je n'ai pas à spécifier X<T> à la création de l'objet ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 X (boost::bind (&namespace::fonction, arg1, arg2, etc ...)); io_service.post (X.execute);
Je veux pouvoir faire ce système pour envoyer n'importe quelle fonction à exécuter à l'io_service, et je dois utiliser une classe plutôt que de faire simplement io_service.post (bind (&namespace::fonction, arg1, arg2, etc ...)) car j'ai besoin de stocker des flags qui me permettent de savoir si je peux exécuter la fonction associée à chaque X.
Merci d'avance de vos conseils/critiques.
Partager