본문 바로가기

Swift

Swift 정리 : 클로저

클로저 표현식은 독립적인 코드 블록

익명함수

클로저 표현식은 매개변수를 받거나, 값을 반환하도록 만들 수도 있음

{(<매개변수 이름>: <매개변수 타입>, … ) -> <반환 타입> 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

}

'Swift' 카테고리의 다른 글

Swift 정리 : 클래스  (0) 2022.10.18
Swift 정리 : 클로저 축약 표현  (0) 2022.10.11
Swift 정리 : 함수 - 1급 객체  (0) 2022.10.11
Swift 정리 : guard let  (0) 2022.10.11
Swift 정리 : Call by reference 구현  (0) 2022.10.11