3

我将如何在 Lua 中完全擦除或重置表。我想最后把它做成一张空白表。

4

3 回答 3

7

您遍历键并使它们为零。

for k,v in pairs(t) do
  t[k] = nil
end

如果它是一个数组,则使用 table.remove() 删除值

于 2011-02-10T04:48:55.063 回答
3

这种方式呢?

t = {..some non-empty table..}
...some code...
t={}
于 2011-02-10T12:33:29.390 回答
0

这将创建一个带有新指针的新表 't' 并删除旧值:

t = {1, 2, 3}
t = {}
collectgarbage()

这将删除表的所有值,您最终将没有表:

t = {1, 2, 3}
t = nil
collectgarbage()
于 2017-05-17T13:15:37.247 回答