加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在lua中使用变量参数的pcall

发布时间:2020-12-14 21:48:04 所属栏目:大数据 来源:网络整理
导读:我正在寻找一种方法来实现一个在lua5.3中具有可变参数的函数. 我希望有这样的事情 function add(...)local sum=arg + ...return sumendstat,err=pcall(add,...) 谢谢 解决方法 function add(...) local sum = 0 for _,v in ipairs{...} do sum = sum + v end
我正在寻找一种方法来实现一个在lua5.3中具有可变参数的函数.

我希望有这样的事情

function add(...)
local sum=arg + ...
return sum
end

stat,err=pcall(add,...)

谢谢

解决方法

function add(...)
   local sum = 0
   for _,v in ipairs{...} do 
      sum = sum + v
   end
   return sum
end

pcall(add,1,2,3)
-->   true    6

或者这更接近你想要的东西:

function add(acc,...)
   if not ... then
      return acc
   else 
      return add(acc + ...,select(2,...))
   end
end

pcall(add,3)
-->   true    6

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读