[英]Lambda and proc generated
我在https://ruby-doc.org/core-2.3.1/Proc.html 上閱讀了關於 ruby 中的 Proc
lambda(&lambda {}).lambda? #=> true
proc(&lambda {}).lambda? #=> true
Proc.new(&lambda {}).lambda? #=> true
lambda(&proc {}).lambda? #=> false
proc(&proc {}).lambda? #=> false
Proc.new(&proc {}).lambda? #=> false
我幾乎不明白為什么所有的結果都是他們。 如果你有任何想法。 請幫我!
它在您引用的代碼上方這么說:
lambda
、proc
和::new
保留了&
參數給出的Proc
對象的技巧。
在前三個示例中,您使用lambda {}
創建了一個Proc
; 因此它是一個 lambda。 包裝它不會改變它; .lambda?
是true
。
在后三個示例中,您使用proc {}
創建一個Proc
; 因此它不是 lambda。 包裝它不會改變它; .lambda?
是false
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.