fflua的使用疑问

Wim 发布于 2015/03/17 16:13
阅读 129
收藏 0

@EvanZhaoOwn 你好,想跟你请教个问题,关于fflua的:

是取自阁下的例子程序:

C++代码:

        int32_t arg1 = 1;
        float   arg2 = 2;
        double  arg3 = 3;
        string  arg4 = "4";
        fflua.call<bool>("test_func", arg1, arg2, arg3,  arg4);

        std::cout << "arg4: " << arg4 << std::endl;
       
lua代码:

        function test_func(arg1, arg2, arg3, arg4)
            print("in test_func:", arg1, arg2, arg3, arg4)
            mp = {["k"] = "v"}
            vc = {1,2,3}
            lt = {4,5,6}
            st = {7,8,9}
            dumy(mp, vc, lt, st)

            arg4 = "5"
        end

问题:arg4在lua代码里修改成"5",那么C++代码里最终打印结果是"5"吗,还是"4" ? 另外,如果lua里所调用的C++函数具有返回值,可以在lua代码里通过ret = cfun()的形势获取返回值吗?谢谢!!!







加载中
0
EvanZhaoOwn
EvanZhaoOwn

arg4在lua代码里修改成"5",c++值是不改变的,c++传给lua的值不是引用,这也是为了安全起见。

注册到lua中的函数,lua调用起来跟原生lua函数是一样的,如果有返回值,可以直接获取。如果还有问题可以QQ聊,693654841

返回顶部
顶部