Dans Swift, les structures et les types de valeurs sont transmis par valeur par défaut, tout comme en C #. Mais C # a également un mot-clé ref très utilisable, qui force le paramètre à être passé par référence, de sorte que la même instance pourrait être modifiée à l'intérieur de la fonction et accessible par la suite à partir de la portée de l'appelant. Existe-t-il un moyen d'obtenir le même résultat dans Swift?
Utilisez le qualificatif inout
pour un paramètre de fonction.
func swapTwoInts(a: inout Int, b: inout Int) {
let temporaryA = a
a = b
b = temporaryA
}
swapTwoInts(&someInt, &anotherInt)
Voir Paramètres de fonction et valeurs de retour dans la documentation.