我是红宝石的新手,最近发现自己陷入了以下示例。我知道(或至少我读过)红宝石总是按值传递。但是,如果您看到以下示例,则我声明一个空数组variable
并将其传递给函数modify
。通过modify
函数,将8分配给dummy
变量。问题是执行修改功能时,我的变量中得到8。如果按值传递ruby,执行 modify 函数后 variable 空数组如何获得值8?
def my_function
variable = []
result = modify(variable)
end
def modify(dummy)
[['first']].map do
dummy << 8
end
end
我对通过价值传递和通过参考传递
的理解