S.l.e!ep.¢%

像打了激速一样,以四倍的速度运转,开心的工作
简单、开放、平等的公司文化;尊重个性、自由与个人价值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

lua函数中的"匿名变量"?

Posted on 2014-11-12 21:19 S.l.e!ep.¢% 阅读(1765) 评论(3)  编辑 收藏 引用 所属分类: Skynet
在skynet中看下如下用法

function print_my(_, _, )
    local arg
= {  }

    
for i,v in ipairs(arg) do
       print( tostring(v) )
    end

end


print_my (
1234)

输出
3
4

既然这两个变量没有使用到,那为何还要传递给函数? 并用占位符标识?


function print_my(a, b, )
    local arg
= {}

    
for i,v in ipairs(arg) do
       print( tostring(v) )
    end

end


print_my (
1234)

也是输出
3
4

Feedback

# re: lua函数中的"匿名变量"?[未登录]  回复  更多评论   

2014-11-14 16:16 by jcily
占两个位置,意图何在?

# re: lua函数中的"匿名变量"?  回复  更多评论   

2014-11-14 18:17 by 南宫临风
只是传递可变参数而已,这两个例子是结合演示可变参数吧

# re: lua函数中的"匿名变量"?  回复  更多评论   

2014-11-17 14:17 by Clear
_是用作占位符,表示参数不会使用
有时候函数调用者传入了多个参数,函数用不到的参数,可以用_占位
主要多见于一些回调函数

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理