最好的方法是删除表中的所有对象。

``` 将下面的代码翻译成中文,只显示翻译内容,保留原有的 markdown 格式: for i = 1, #allblocks do -- 移除表中所有对象 Removing_block = table.remove(allblocks, 1) Removing_block:removeSelf() -- 移除对象 Removing_block=nil end

这是我找到的最好的方法。有人有更好的方法吗?

点赞
用户308010
用户308010

详细说明Etan的评论:

将代码更改为:

for i = #allblocks, 1, -1 do
  Removing_block = table.remove(allblocks, i)
  Removing_block:removeSelf()
  Removing_block = nil
end

我猜你不能做以下操作

allblocks = {}

来重置它?你看起来是在做相同的事情。

2015-04-06 20:34:53
用户107090
用户107090

这是最简单的方法:

对于 i = 1 到 #allblocks,做以下操作:
  移除 allblocks[i]
  将 allblocks[i] 设为 nil
结束
2015-04-06 21:44:02
用户3735873
用户3735873

假设:Table 是一个索引从 1 到 n 的列表。

考虑到 table.remove() 也会返回刚刚被删除的项,最简单(最短)的方法可能如下所示:

for i = 1, #allblocks do
  table.remove(allblocks):removeSelf()
end
2015-04-07 14:07:06