루비에있는 Procs와 Lambdas가 무엇인지에 대한“간단한”설명이 있습니까?

StackOverflow https://stackoverflow.com/questions/1740917

  •  20-09-2019
  •  | 
  •  

문제

루비에있는 Procs와 Lambdas가 무엇인지에 대한 "간단한"설명이 있습니까?

도움이 되었습니까?

해결책

Lambdas (다른 언어로도 존재하는)는 임시 기능과 같습니다.

같은 메소드를 사용할 때 Array#collect 블록을 가져갑니다 {}, 당신은 본질적으로 해당 방법을 사용하기 위해 Lambda/Proc/Block을 만들고 있습니다.

a = [1, 2, 3, 4]
# Using a proc that returns its argument squared
# Array#collect runs the block for each item in the array.
a.collect {|n| n**2 } # => [1, 4, 9, 16]
sq = lambda {|n| n**2 } # Storing the lambda to use it later...
sq.call 4 # => 16

보다 익명 기능 Wikipedia와 일부 다른 질문 뉘앙스를 위해 lambda vs. Proc.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top