我有一个返回字典表的 Lua 函数,并且放入返回表的值之一是另一个表,如下面的 Lua 函数所示。
function tableWithinTable()
local ret = {}
ret["a"] = 1
ret["b"] = {1,2,3}
ret["c"] = 3
return ret
end
我将如何访问该内表?
我知道我可以上桌,因为我可以输入下面的 if 语句。我目前阅读表格的尝试也包括在内。
lua_pushstring("b");
lua_gettable(lua,1);
if(lua_istable(lua,-1))
{
//whatever is in here is executed.
lua_pushnumber(lua,1);
lua_gettable(lua,-1); //crashes to desktop here
std::cout << lua_tonumber(lua,-1) << std::endl;
lua_pop(lua,1);
}
我很确定有一个简单的解决方案,但我完全被难住了。任何帮助将非常感激。