익명함수란?
일반적인 함수의 경우 func 키워드와 함수 이름을 선언하고 사용하지만
이처럼 효율적이 ㄴ코드를 작성하기 위해 함수 이름을 선언하지 않고 바로 몸체만 만들어 사용하는 일회용 함수를
익명함수(Anonymous Functions) 혹은 클로저(Closure)라고 한다.
익명 함수를 작성할 수 있는 구문 예
1
2
3
4
5
6
|
func test(finish: Bool) -> ()
{
print("test \(finish)")
}
http://colorscripter.com/inf#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
test 함수는 Bool 타입의 finisih 매개변수를 받아 출력하는 함수이며 리턴 타입은 없다
위의 코드를 익명 함수형태로 바꾸면?
1
2
3
4
|
{
(finished: Bool) -> () in
print("OK : \(finish)")
}
|
{
(매개변수) -> (반환타입) in
실행구문
}
여기서 컴파일러가 반환 타입을 미리 알고 있다면 반환 타입을 생략할 수 이"ㅆ다.
또한 매개변수의 파라미터 타입도 생략이 가능하다
1
2
3
4
|
{
(finished: Bool) in
print("OK : \(finish)")
}
|
http://colorscripter.com/info#e" target="_blank" style="text-decoration:none;color:white">cs |
{
(매개변수) in
실행구문
}
'■ 문법 ■ > Swift' 카테고리의 다른 글
03. Swift와 데이터 타입 (1) | 2021.03.10 |
---|---|
#02. Swift의 명명규칙과 마크업 문법을 활용한 문서화 주석 (0) | 2021.03.05 |
#01. Swift에 대하여 (0) | 2021.03.04 |
Swift 에러 정리 [최종 업데이트 19.11.28] (0) | 2019.11.28 |
02 옵셔널 변수, 데이트 피커, 델리게이트(delegate) (0) | 2019.11.28 |
댓글