2009-08-14 7 views
2

Existe-t-il un moyen non hacky (c'est-à-dire sans assemblage, ...) d'utiliser des fonctions boost pour créer des rappels avec des méthodes de classe non statiques?Callbacks C++ utilisant des fonctions Boost et des méthodes de classe C++

Actuellement pour les méthodes statiques:

list<function<void (LuaState&)> > _callbacks; 

Je pensais quelque chose le long des lignes de

list<tuple<function<void (void *, LuaState&)>, void*> _callbacks; 

mais booster les fonctions n'aime pas ces void* s.

Répondre

9
function<void (LuaState&)> on_whatever 
    = bind(&my_class::my_method, &my_object_of_type_my_class, _1); 
+0

Hmm Je n'y ai pas pensé. Laisse-moi essayer. – jameszhao00

+0

Ce ne devrait pas être le suivant? Bind (& my_class :: my_method, & my_object_of_type_my_class, _1); – jameszhao00

+0

Oui, vous avez raison, il devrait. Fixé. – avakar

Questions connexes