LuaPlus:如何将一个表格推送到堆栈?

我想要一个函数在被 Lua 脚本调用时返回一个键值对表。因此,我必须将表推入栈中。

我知道如何将整数推入栈中:state->PushInteger(10)

我也知道如何将字符串和其他数字推入栈中,但我应该如何将表推入栈中,甚至如何从 C++ 方面创建表?

通常情况下,这个网站解释得非常好:http://wwhiz.com/LuaPlus/LuaPlus.html,但我很难理解 LuaPlus 是如何工作的。因此,在这种情况下,它并没有真正帮到我。:(

如果有人能帮我解决这个问题,那就太好了,我已经尝试了 3 天了。。 :/

点赞
用户258523
用户258523

在该页面中,将LuaObject推入Lua堆栈 部分似乎是我认为的答案。

您需要将LuaObject推入Lua堆栈的情况很少见。尽管如此,LuaObject的PushStack()函数提供了这种功能。

LuaObject tableObj(state);
tableObj.AssignNewTable();
tableObj.SetString("Key", "My String");

//通常最好在此处使用LuaAutoBlock。
tableObj.PushStack();    //确保在完成后进行清理!
2013-11-06 00:33:52