将具有静态成员的对象的 Lua/C++ 绑定。

我非常感兴趣的是如何将C++类转换为Lua类。我发现一个很好的辅助类-LunaWrapper(描述在这里)。

但是,似乎在Lua中,仅有保留类本身的(不是针对结果对象!)是构造函数。也就是说,如果有静态函数,我就不能调用。

(例如,在LunaWrapper页面上描述的示例中添加一个函数:)

static bool Foo::bar(const char* text)
{
    printf("in bar\n");
}

因此,例如,我在Lua中想做的是:

local foo = Foo()
foo:foo()
Foo.bar() --这应该输出"in bar",但这行不通!这就是我想要的。
foo.bar() --这也应该输出"in bar",但这可能会奏效。

怎么办?

点赞