使用Boost函数和C++类方法的C++回调

jam*_*o00 2 c++ methods boost class function

是否有非hacky(即没有汇编,...)方式使用boost函数来创建非静态类方法的回调?

目前用于静态方法:

list<function<void (LuaState&)> > _callbacks;
Run Code Online (Sandbox Code Playgroud)

我正在思考一些事情

list<tuple<function<void (void *, LuaState&)>, void*> _callbacks;
Run Code Online (Sandbox Code Playgroud)

但是增强功能不喜欢那些void*.

ava*_*kar 9

function<void (LuaState&)> on_whatever
    = bind(&my_class::my_method, &my_object_of_type_my_class, _1);
Run Code Online (Sandbox Code Playgroud)