Sobes.tech
Junior

Ce sunt tipurile de valori?

sobes.tech AI

Răspuns de la AI

Tipurile de valori în Swift sunt tipuri ale căror exemplare sunt copiate la atribuire sau la transmiterea către o funcție. Fiecare copie independentă are propriul său stocare.

Exemple:

  • 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 // Copierea valorii
p2.x = 10 // Modificăm copia, p1 nu se schimbă

print(p1.x) // Output: 1
print(p2.x) // Output: 10

Avantaje:

  • Comportament previzibil, deoarece modificările într-o parte a codului nu afectează alte copii.
  • Siguranță implicită în manipularea valorilor locale.

Dezavantaje:

  • Copierea poate fi costisitoare pentru structuri mari.

Comparativ cu tipurile de referință:

Caracteristici Tip de valoare Tip de referință
Atribuire Copierea valorii Copierea referinței
Modificare Modifică copia Modifică obiectul original
Exemplu struct, enum, tuple, tipuri de bază class, closure