Lua报错:invalid key to 'next'

时间:2017-08-14 20:47:01   收藏:0   阅读:2105

1.问题产生的原因是,在一个循环里对table中的元素先进行置空操作,再进行增加新元素的操作,就会报这个错误。

2.比如下面的例子:(当中间的函数足够复杂并进行封装了的情况下,不会留意到存在这个问题)

t = {1,2}

function remove_ele()
 t[1] = nil
end

function add_ele()
  t[3] = 3 --err:增加原来没有的元素
  --t[1] = 1 --correct:修改原有的元素
end


for k,v in pairs(t) do
 remove_ele()
 add_ele()
end

以上,完。

 

原文:http://www.cnblogs.com/chevin/p/7359775.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!