for-loop – Bizzare“试图在Lua中调用一个表值”
发布时间:2020-12-15 00:26:13 所属栏目:大数据 来源:网络整理
导读:以下代码段: for weight,item in itemlist do weight_total=weight_total+weightend 在该代码段的第一行导致错误“尝试调用表值”.为什么? Itemlist是权重和字符串表的表,如下所示: local itemlist = { {4,"weapon_pistol"},{2,"weapon_357"},... 据我所
以下代码段:
for weight,item in itemlist do weight_total=weight_total+weight end 在该代码段的第一行导致错误“尝试调用表值”.为什么? Itemlist是权重和字符串表的表,如下所示: local itemlist = { {4,"weapon_pistol"},{2,"weapon_357"},... 据我所知,没有任何东西被称呼;为什么会出现这个错误? 解决方法
期望3个参数的泛型:一个可调用的值,一些重复传递给它的值,以及迭代开始的键.
如果不可调用,股票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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |