1

这就是我想做的。

诠释卢亚:

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 表。

4

1 回答 1

0

解决了

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();
    
于 2021-05-25T10:15:10.757 回答