这个发生了什么?有人能解释一下吗?


proc_obj = -> proto { print proto; puts("World")}
puts proc_obj["Hi"]
puts proc_obj.call("Hello") #Is this is the same as above

发生在lambda上的是您调用它的[]方法,这导致lambda以参数"Hi"执行。是的,调用call和调用[]是一样的。

http://www.ruby-doc.org/core-1.9.3/Proc.html method-i-5B-5D

相关内容

最新更新