以下代码段:
for weight,item in itemlist do weight_total=weight_total+weight end
Itemlist是权重和字符串表的表,如下所示:
local itemlist = { {4,"weapon_pistol"},{2,"weapon_357"},...
据我所知,没有任何东西被称呼;为什么会出现这个错误?
解决方法
期望3个参数的泛型:一个可调用的值,一些重复传递给它的值,以及迭代开始的键.
如果不可调用,股票lua不会在传递给的第一个值上调用对,尽管有些衍生品可以.
如果不可调用,股票lua不会在传递给的第一个值上调用对,尽管有些衍生品可以.
因此,您必须使用ipairs(项目列表),对(项目列表),下一个,项目列表或任何您想要的(最后两个具有相同的行为,并且是大多数衍生品所做的).
迭代器解包值序列…
function awesome_next(t,k) local k,v = next(t,k) if not v then return end return k,table.unpack(v) end for k,a,b,c,d in awesome_next,t do end
原文地址:https://www.jb51.cc/lua/274584.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。