일상 코딩
Swift 스위프트 함수를 파라미터로 입력받는 고급 함수 기능 본문
728x90
// ---- Function as a param
func add( _ a: Int, _ b: Int) -> Int {
return a+b
}
func subtract( _ a: Int, _ b: Int)-> Int{
return a - b
}
func multiple( _ a: Int, _ b: Int) -> Int{
return a * b
}
var function = add
function(4,2)
function = subtract
function(4,2)
func printResult(_ function: (Int, Int) -> Int, _ a: Int,_ b: Int){
let result = function(a,b)
print(result)
}
printResult(add, 10, 5) // 15
printResult(subtract, 10, 5) // 5
printResult(multiple, 10,5) // 50
Swift에는 함수를 파라미터로 받는 함수 기능이 존재한다.
위의 코드에서 단순한 4칙 연산 함수 3개와
그 함수를 요소로 받고,
계산하고자하는 정수 타입의 숫자도 받아 결과값을 도출하는 함수를 표현하였다.
주의할 점은 함수를 요소로 입력시 어떠한 타입인지도 표시해주어야 한다는 것이다. ( _ function: (Int, Int) -> Int, )
또한 함수는 최대한 길어지지 않게, 단순한 기능만을 가질 수 있도록 짧게 작성한다.
728x90
'Swift' 카테고리의 다른 글
Swift 스위프트 함수 in-out parameter 파라미터. 21.07.16. (0) | 2021.07.16 |
---|---|
Swift 스위프트 - 파이썬 함수 작성법 차이점. 21.07.16. (0) | 2021.07.16 |