글
11. Swift 함수의 중첩
Swfit
2017. 8. 4. 11:53
11. Swift 함수의 중첩
- 스위프트에서 함수는 중첩하여 작성할 수 있다. 함수 내에 다른 함수를 작성해서 사용할 수 있다. 이렇게 작성된 함수를 중첩함수라고 하고 , 중첩 함수를 부분별로 나누어 보면 함수 내에 작성된 함수는 내부 함수, 내부함수를 포함하는 바깥쪽 함수는 외부 함수 로 구분할수 있다.
- 함수내에 작성할 수 있는 내부 함수의 수에는 제한이 없다.
- 내부 함수 내에 또다른 내부 함수를 작성할 수도 있다.
- 내부 함수는 외부 함수가 실행되는 순간 생성되고, 종료되는 순간 소멸한다. 이것이 내부 함수의 생명 주기 이다.
//외부 함수
func outer(base : Int) -> String {
//내부 함수
func inner(inc : Int) -> String {
return "\(inc)를 반환합니다.”
}
let result = inner(inc : base + 1)
return result
}
outer(base: 3)
//“4를 반환합니다.”
###################
//외부 함수
func outer(param : Int) -> (Int) -> String {
//내부 함수
func inner(inc : Int) -> String {
return "\(inc)를 반환합니다.”
}
return inner
}
let fn1 = outer(param:3)
let fn2 = fn1(30)
'Swfit' 카테고리의 다른 글
13. Swift 구조체와 클래스 (0) | 2017.08.04 |
---|---|
12. Swift 클로저(Closure) (0) | 2017.08.04 |
10. Swift 일급 객체로서의 함수 (0) | 2017.08.04 |
9. Swift 매개변수 (1) | 2017.08.04 |
8. Swift 함수(Function) (0) | 2017.08.04 |