Swift
Swift 정리 : 클로저
코딩갱
2022. 10. 11. 16:23
클로저 표현식은 독립적인 코드 블록
익명함수
클로저 표현식은 매개변수를 받거나, 값을 반환하도록 만들 수도 있음
{(<매개변수 이름>: <매개변수 타입>, … ) -> <반환 타입> in
// 클로저 표현식 코드
}
let add = { (x: Int, y: Int) -> Int in
return(x+y)
}
print(type(of:add)) //(Int, Int) -> Int
print(add(20,30)) //50
후행클로저(trailing closure)
클로저가 함수의 마지막 argument라면 마지막 매개변수명(cl)을 생략한 후 함수 소괄호 외부에 클로저를 작성
func someFun(cl: () -> Void) {
}
// trailing closure를 사용 안하면
someFun(cl: {
//closure’s body
})
// trailing closure 사용
someFun() {
//trailing closure's body goes here
}