我已将Lua嵌入到我的C应用程序中,我试图找出为什么在C代码中创建一个表:
lua_createtable(L,numObjects);
并返回到Lua,当我打电话给以下时,会产生一个结果:
print("Num entries",table.getn(data))
(其中“data”是由lua_createtable创建的表)
表中有清楚的数据,因为我可以通过以下方式遍历每个条目(字符串:userdata)对:
for key,val in pairs(data) do ... end
但是为什么table.getn(data)返回零?当我用lua_createtable创建它时,是否需要在表的元素中插入东西?我一直在看lua_createtable使用的例子,我没有看到这样做在任何地方….