【发布时间】:2012-07-29 12:28:33
【问题描述】:
使用 splat 运算符通过引用将参数传递给块时,参数似乎被复制了。
我有这个:
def method
a = [1,2,3]
yield(*a)
p a
end
method {|x,y,z| z = 0}
#=> this puts and returns [1, 2, 3] (didn't modified the third argument)
如何通过引用传递这些参数?如果我直接传递数组似乎可以工作,但是 splat 运算符在这里会更加实用、直观和可维护。
【问题讨论】: