1
我不明白以下两个代码示例之间的区别在哪里。第一个例子有一个块参数和一个块本地参数。第二个有两个块参数。我明白,块和块本地参数 - 都有自己的范围。但是两者有什么区别?块参数与红宝石块本地参数
x = 10
5.times do |y; x|
x = y
puts "x inside the block: #{x}"
end
puts "x outside the block: #{x}" # <-- gives 10
和
x = 10
5.times do |y, x|
x= y
puts "x inside the block: #{x}"
end
puts "x outside the block: #{x}" # <-- gives also 10