需要将一个全局变量分配为指针,并在lua中使用它。

我正在使用luabind,并希望使此lua代码工作。

print("hello..welcome to lua\n")
base:PrintMe("printing from base" )

从c ++中,我想将lua全局变量“base”分配为指向“Base”类的指针。

class Base {
public:
void PrintMe(const char *s) { ... }
};

使用Luabind,我可以绑定Base类。我在c ++中创建了一个Base类对象。 我希望将此指针推入lua,并将其用作上面lua代码中看到的lua全局变量“base”。

有人可以帮我吗,最简单的方法是什么(如果可能的话使用luabind本身)? 我尝试将其作为lightuserdata推入,但是从lua中未调用PrintMe。

原文链接 https://stackoverflow.com/questions/9905840

点赞
stackoverflow用户988932
stackoverflow用户988932

这行代码将解决问题 :)

globals(ls) ["base"] = baseObjPtr;
2012-04-30 09:38:43