Lua table.getn() возвращает 0?

Я встроил Lua в свое приложение на C и пытаюсь понять, почему таблица, созданная в моем коде на C через:

lua_createtable(L, 0, numObjects);

и возвращенная в Lua выдаст нулевой результат, когда я вызову следующее:

print("Num entries", table.getn(data))

(где «данные» — это таблица, созданная lua_createtable выше)

В таблице явно есть данные в , так как я могу ходить над каждой парой записей (строка : пользовательские данные) через:

for key, val in pairs(data) do
  ...
end

Но почему table.getn(data) возвращает ноль? Нужно ли мне что-то вставлять в мета таблицы, когда я создаю ее с помощью lua_createtable? Я просматривал примеры использования lua_createtable и нигде не видел такого....

9
задан jimt 8 March 2012 в 05:31
поделиться