我目前正在尝试学习如何使用C ++桥接Lua并编写脚本。我遇到的问题是大多数教程或文档都有些简化。或许我的方法不对,这就是我现在在这里问的原因。
我正在尝试初始化元表,更具体地说。试图添加功能。像这样;
luaL_Reg rmFuncs[] =
{
{ "rotate", RotateBlocks },
{ NULL, NULL }
};
但添加RotateBlocks有点棘手。我发现的所有示例都是在main中完成的,而不是在类中完成的。 RotateBlocks实际上是Application :: RotateBlocks。
因此,让它成功的唯一方法就是:
static int RotateBlocks(lua_State* L);
这是唯一的方法吗?因为这会导致很多问题。由于它是静态的,我实际上无法在函数内旋转我想要的对象。因为我的所有成员都抱怨函数是静态的。
那么我如何在我的函数中实际执行任何有用的操作,而不是像所有教程或文档中那样printf随机句子?