对于下面的方法
def mixed_args(a,b,*c,d)
puts a,b,c,d
end
p mixed_args(1,2,3,4,5)
我收到此错误消息:
syntax error, unexpected tIDENTIFIER, expecting tAMPER or '&'
您能提示我缺少哪些信息吗?
最佳答案
您正在运行 Ruby 1.8。 splats 的这种“高级”用法在 1.9 之前不可用。
在 Ruby 1.8 中,splat 必须是最后一个参数:a,b,*c
可以。在 Ruby 1.9 中,他们引入了在列表中显示参数的能力,a,b,*c,d
。
关于ruby - Splat 在非最终位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19013496/