【发布时间】:2011-10-25 23:17:11
【问题描述】:
可能重复:
What's the difference between a proc and a lambda in Ruby?
当运行这个Ruby 代码时:
def func_one
proc_new = Proc.new {return "123"}
proc_new.call
return "456"
end
def func_two
lambda_new = lambda {return "123"}
lambda_new.call
return "456"
end
puts "The result of running func_one is " + func_one
puts ""
puts "The result of running func_two is " + func_two
我得到的结果如下:
The result of running func_one is 123
The result of running func_two is 456
至于func_two,第一个return的值在哪里,也就是123?
谢谢。
【问题讨论】:
-
@Phrogz。请检查我的问题和您指向的主题中的问题,看看我的问题不是重复
-
我想这是一个见仁见智的问题。您没有问完全相同的问题,但如果您阅读了该问题的答案,您就会知道您的问题的答案。
-
更详细的答案真的在这里:stackoverflow.com/questions/626/…
标签: ruby lambda return proc-object