如何删除Lua表中的所有元素? [英] how to delete all elements in a Lua table?

查看:852
本文介绍了如何删除Lua表中的所有元素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何删除Lua表中的所有元素?我不想做:

How do I delete all elements inside a Lua table? I don't want to do:

t = {}
table.insert(t, 1)
t = {}  -- this assigns a new pointer to t

我想保留指向t的相同指针,但删除t中的所有元素.

I want to retain the same pointer to t, but delete all elements within t.

我尝试过:

t = {}
table.insert(t, 1)
for i,v in ipairs(t) do table.remove(t, i) end

以上有效吗?还是需要其他东西?

Is the above valid? Or is something else needed?

推荐答案

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

也将起作用-如果整个表都不用作数组,您可能会遇到ipairs的问题.

Will also work - you may have difficulty with ipairs if the table isn't used as an array throughout.

这篇关于如何删除Lua表中的所有元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆