Junior
Qu'est-ce que les types de valeurs?
sobes.tech IA
Réponse de l'IA
Les types de valeurs en Swift sont des types dont les instances sont copiées lors de l'affectation ou du passage à une fonction. Chaque copie indépendante possède son propre stockage.
Exemples :
- Structs
- Enums
- Tuples
- Integer, Float, Double, Bool, String, Array, Dictionary, Set
struct Point {
var x: Int
var y: Int
}
var p1 = Point(x: 1, y: 2)
var p2 = p1 // Copie de la valeur
p2.x = 10 // Nous modifions la copie, p1 ne change pas
print(p1.x) // Résultat : 1
print(p2.x) // Résultat : 10
Avantages :
- Comportement prévisible, car les modifications dans une partie du code n'affectent pas les autres copies.
- Sécurité du flux par défaut lors de la manipulation de valeurs locales.
Inconvénients :
- La copie peut être coûteuse pour de grandes structures.
Comparaison avec les types de référence :
| Caractéristique | Type de valeur | Type de référence |
|---|---|---|
| Affectation | Copie de la valeur | Copie du lien |
| Modification | Modifie la copie | Modifie l'objet original |
| Exemple | struct, enum, tuple, types de base | class, closure |