2017-02-13 1 views

답변

4

인라인 값은 먼저 중간 변수에 할당하지 않고 직접 사용되는 값입니다. 이들 두 실시 예를 고려

여기
let number = 1 
print(number) 

1이어서 인쇄 된 중간 변수 number에 할당된다.

print(1) 

여기서, 1은 인라인 된 정수 리터럴이며 직접 인쇄됩니다.

동일한 내용이 클로저에 적용됩니다. 여기

let evenNumberFilter: (Int) -> Bool = { $0 % 2 == 0 } 
print((0...10).filter(evenNumberFilter)) 

, { $0 % 2 == 0 } 사용되기 전에 중간 변수 evenNumberFilter에 할당 ((Int) -> Bool 형의)가 폐쇄된다.

print((0...10).filter{ $0 % 2 == 0 }) 

이 경우, { $0 % 2 == 0 }을 직접 사용했습니다. 인라인 클로저입니다.

+0

감사합니다. @Alexander –

+0

@VinothVino 질문에 답한 경우 대답을 수락하십시오. – Alexander

관련 문제