繁体   English   中英

如何使用 luaBridge 将 lua 表传递给 c++ class 构造函数?

[英]How to pass lua table to the c++ class Constructor using luaBridge?

这就是我想做的。

诠释 lua:

object1 = MyObjectClass({1,2,3});

在 c++

class MyObjectClass
{
public:
    MyObjectClass(/*How to passed lua table here?*/)
    {
    
    }
    void printmynum()
    {

    }
};


getGlobalNamespace(L)
    .beginClass<MyObjectClass>("MyObjectClass")
    .addConstructor<>()//???
    .addFunction("printmynum",&MyObjectClass::printmynum)
    .endClass();

我很抱歉英语能力差。

我想从 MyObjectClass 的构造函数中接收 lua 的表。

解决了

class MyObjectClass
{
public:
    MyObjectClass(lua_State* L)
    {
        LuaRef param = LuaRef::fromStack(L, 2);
        if (param.isTable())
        {
            cout << param[1] << endl;
        }
    }
    void printmynum()
    {

    }
};


getGlobalNamespace(L)
.beginClass<MyObjectClass>("MyObjectClass")
    .addConstructor<void (*)(lua_State*)>()
    .addFunction("printmynum",&MyObjectClass::printmynum)
    .endClass();
    

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM