m = Proc.new { puts "fuck" }m1 = proc { puts "fuck1" }def my_method yieldenddef my_method1(obj) obj.callendmy_method(&m) #=> fuckmy_method(&m1) #=> fuck1my_method1(m) #=> fuckmy_method1(m1) #=>fuck1&m #=> syntax error, unexpected tAMPER, expecting $end
?说明块转化操作符&只有在方法的调用时的参数括号中才有意义,其他情况是语法错误。
? 当不用块转化符&转化时,就要用call去调用块了