我有一段代碼從codeacademy的問題略有修改。該代碼是:Ruby:將`&proc`和`proc`傳遞給方法之間的區別
def print_list(array, first = 1)
counter = first
array.each do |array|
puts "#{yield counter} #{array}"
counter = counter.next
end
end
proc = Proc.new do |n|
"[#{100*n}]:"
end
print_list ["alpha", "beta", "gamma"], 5, &proc
如果我從最後一行除去&紅寶石拋出我的說法錯誤。這裏的&的目的是什麼?
範圍是否與&proc有關? – user3619165
當涉及到作用域時,Procs與變量沒有區別 - 它必須位於作用域內才能引用! – TCSGrad