这是我的 C++ 主要功能:
int main() {
lua_State* L = luaL_newstate();
luaL_openlibs(L);
getGlobalNamespace(L).
beginNamespace("o").
beginClass<Object>("Object").
addConstructor<void (*) (double, double)>().
addProperty("width", &Object::getWidth, &Object::setWidth).
addProperty("height", &Object::getHeight, &Object::setHeight).
addProperty("x", &Object::getX, &Object::setX).
addProperty("y", &Object::getY, &Object::setY).
endClass().
endNamespace();
lua_pcall(L, 0, 0, 0);
luaL_dofile(L, "main.lua");}
这是我用于 Love2D 的 main.lua
function love.load()
obj = o.Object(10, 20) end
当我尝试用爱运行它时,它说 obj 是一个 nil 值,我意识到 Love2D 没有在 C++ 中运行我的主函数来创建对象类。如何使用 LuaBridge 在 Lua 中调用 C++ 主函数?