Funzioni annidate in Swift
In Swift abbiamo la possibilità di creare delle funzioni annidate dentro altre funzioni.
In questo articolo vediamo qualche esempio.
Cominciamo da uno basico:
func somma() {
func printSomma(n1: Int, n2: Int) {
print(n1 + n2)
}
printSomma(n1: 10, n2: 4)
}
somma()
Ovviamente potremmo avere la necessità di passare dei parametri dall'esterno della funzione:
func somma(n1: Int, n2: Int) {
func printSomma(somma: Int) {
print(somma)
}
let res = n1 + n2
printSomma(somma: res)
}
somma(n1: 10, n2: 4)
In entrambi i casi le funzioni non ritornano nulla.
E se inevece volessimo fargli ritornare la somma?
func somma(n1: Int, n2: Int) -> Int {
func printSomma(somma: Int) -> Int {
return somma
}
let res = n1 + n2
let finalRes = printSomma(somma: res)
return finalRes
}
print(somma(n1: 10, n2: 4))
Enjoy!
swift func nested
Commentami!