首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Ruby中可以用默认参数定义一个块吗?

在Ruby中可以用默认参数定义一个块吗?
EN

Stack Overflow用户
提问于 2009-11-15 05:23:20
回答 2查看 9.2K关注 0票数 22

This question处理传递给Ruby块的可选参数。我想知道是否也可以用默认值定义参数,以及它的语法是什么。

乍一看,答案似乎是“不”:

代码语言:javascript
复制
def call_it &block
  block.call
end

call_it do |x = "foo"|
  p "Called the block with value #{x}"
end

...results in:

代码语言:javascript
复制
my_test.rb:5: syntax error, unexpected '=', expecting '|'
    call_it do |x = "foo"|
                   ^
my_test.rb:6: syntax error, unexpected tSTRING_BEG, expecting kDO or '{' or '('
      p "Called the block with value #{x}"
         ^
my_test.rb:7: syntax error, unexpected kEND, expecting $end
    end
       ^
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1735657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档