LuaBridge回调(将Lua函数传递给C++)

如何使用Luabridge(1.0.2)将LUA中的函数传递给C ++?

local Callback=function()
    print("Inside Callback function!");
end

然后将该回调传递给C ++:

self.Background:On("Click",Callback)

“Click”是const std :: string&,但您如何将Callback定义为函数?我尝试了一些方法(void *,std :: function),但这些都不能正常工作。

点赞
用户965619
用户965619

找到了解决方法!如果你想传递函数,LuaBridge 2.0(在开发分支中)可以引入LuaRef来解决。

你的函数应该像这样:

void DisplayObject::On( const std::string& Param1,LuaRef Param2 );

那么就可以这样调用函数:

Param2();

https://github.com/vinniefalco/LuaBridge/tree/develop

2013-04-21 05:51:23