class MyClass
def fun
a = 2
b = 5
yield(a,b)
end
def self.fun2
puts self
end
end
m = 1
n = 2
mine = MyClass.new
mine.fun {|m| puts "m = #{m} n = #{n}"}
在這裏,我故意不匹配的屈服參數的數目,並且輸出爲什麼這個奇怪的值被分配?
test.rb:16: warning: multiple values for a block parameter (2 for 1)
from test.rb:5
m = 25 n = 2
哪裏這25從何而來?
您使用的是什麼版本的ruby? – 2013-03-27 02:31:28
對不起,它實際上是1.8.7 ...我有我的Linux 1.9.2,我目前在我的Mac ... – OneZero 2013-03-27 02:44:01