【发布时间】:2013-08-01 02:52:18
【问题描述】:
我正在浏览 Camping 代码库时看到一个带有 splat 的构造函数,像这样使用:
class Fruit
def initialize(*)
end
end
我尝试在此站点和 Google 上查找“没有变量名的 splat”,但除了关于 splat 与 *some_var 这样的变量名一起使用的信息外,我找不到任何其他信息,但不是没有。我尝试在 repl 上玩这个,我尝试了类似的东西:
class Fruit
def initialize(*)
puts *
end
end
Fruit.new('boo')
但是会遇到这个错误:
(eval):363: (eval):363: compile error (SyntaxError)
(eval):360: syntax error, unexpected kEND
(eval):363: syntax error, unexpected $end, expecting kEND
如果这个问题还没有被问过,有人能解释一下这个语法的作用吗?
【问题讨论】:
标签: ruby