我知道许多
ruby样式指南都坚持围绕方法定义的方法参数括起来.我理解有时在语法上需要括号来进行方法调用.
但是,任何人都可以提供为什么Ruby需要围绕方法定义的参数括号的示例吗?基本上,我正在寻找除“它看起来更好”之外的原因.
解决方法
如果你既没有括号也没有分号
as pointed out in this comment,那就不明确了.
def foo a end # => Error because it is amgiguous. # Is this a method `foo` that takes no argument with the body `a`,or # Is this a method `foo` that takes an argument `a`?
另外,当您想使用复合参数时,不能省略括号:
def foo(a,b),c p [a,b,c] end # => Error def foo((a,c) p [a,c] end foo([1,2],3) # => [1,2,3]