30
코드 블록을 사용하는 메소드가 있습니다.Ruby에서 여러 코드 블록을 인수로 전달
opportunity { @some_array.empty? }
을하지만 수율을 사용할 수 있도록 어떻게 이런 식으로 두 번 뭔가를 하나 개 이상의 코드 블록을 전달할 않습니다 :
def opportunity
@opportunities += 1
if yield
@performances +=1
end
end
와 나는 같이 호출
def opportunity
if yield_1
@opportunities += 1
end
if yield_2
@performances +=1
end
end
및 :
opportunity {@some_other_array.empty?} { @some_array.empty? }
이 예제는 수율없이 수행 할 수 있다는 것을 알고 있습니다 만 설명하기위한 것입니다.
그 함수를 선언하는 다른 방법은 – user5020
Proc.new {} 또는 lambda {}도 작동합니다. 'call '에 응답하는 모든 객체가 작동합니다. – Kylee
'.()'메소드는'.call'의 별칭입니까? – MrYoshiji