Usare le closure in Swift

Mattepuffo's logo
Usare le closure in Swift

Usare le closure in Swift

La closure, conosciute anche come funzioni anomine o lambda in altri linguaggi, sono delle funzioni senza nome che possiamo assegnare ad una variabile, passare come parametro o restituire come valore.

In questo articolo ne vediamo un paio di esempi in Swift.

Cominciamo dal più basico:

var add = {(a: Int, b: Int) -> Int in
    return a + b
}
print(add(10, 3))

Come vedete, abbiamo assegnato una funzione ad una variabile.

Questa funzione non ha nome, ritorna un intero, e vuole due parametri.

Cosi facendo possiamo usare questa variabile anche in altre parti del programma.

Il secondo esempio vi fa vedere proprio questo:

var add = {(a: Int, b: Int) -> Int in
    return a + b
}
print(add(10, 3))

func miaFunzione(a: Int, b: Int, fn: (Int, Int) -> Int) -> Int {
    let res = fn(a, b)
    return res
}
print(miaFunzione(a: 10, b: 3, fn: add))

Enjoy!


Condividi

Commentami!