【问题标题】:LuaBridge callbacks (passing lua functions to c++)LuaBridge 回调(将 lua 函数传递给 c++)
【发布时间】:2013-04-14 04:30:11
【问题描述】:

如何使用 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),但这些方法都不能正常工作。

【问题讨论】:

    标签: c++ binding lua luabridge


    【解决方案1】:

    想通了!如果您尝试传递函数,LuaBridge 2.0(在开发分支中)通过引入 LuaRef 解决了这个问题。

    你的函数应该是这样的:

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

    然后像这样调用函数:

    Param2();
    

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

    【讨论】:

    • 截至 2013 年 5 月中旬,LuaRef 现在位于 LuaBridge 的主分支中。
    猜你喜欢
    • 2019-03-23
    • 2021-08-13
    • 1970-01-01
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 2016-10-08
    相关资源
    最近更新 更多