클로져
- 짧고 독립적인 코드 조각
클로져 종류
Named Closures - Global Function,Nested Function
Unnamed Closures - Anonymous Function
보통 클로져라 하면 Unnamed Closures - Anonymous Function를 뜻함
함수와 클로져는 서로 자료형이 같아서 서로 호환이 됨
Global Scope에서는 단독으로 사용 불가
클로져도 First Class Citizen임
1. 변수, 상수에 저장가능
2. 파라미터로 전달할 수 있음
3. 함수와 메소드에서 리턴 가능
//Closures
{(parameters) -> ReturnType in
statements
}
// in 을 기준으로 앞은 closure head 뒤는 closure body라고 부름
//파라미터와 리턴 타입을 생략할 수 있음
{statements}
파라미터와 리턴형이 생략된 클로져 예시
let sayHello = {print("안녕하세요")}
이름이 없는 함수 Unnamed Closure에 sayHello라는 이름을 붙임
sayHello를 실행해보면 안녕하세요가 출력됨
파라미터와 리턴타입을 사용할 경우
클로져에서는 Argument Label을 사용하지 않음
'Swift랑 친해지기 > Swift문법정리' 카테고리의 다른 글
[Swift] String Index (문자열 인덱스) (0) | 2022.08.18 |
---|---|
[Swift] String & Characters (문자열 & 문자) (0) | 2022.08.17 |
[Swift] Tuples (튜플) (0) | 2022.08.16 |
[Swift] Escaping Closure (0) | 2022.08.15 |
[Swift] Capturing values (0) | 2022.08.15 |