Sobes.tech
Junior

Mi a értéktípusok?

sobes.tech MI

Válasz az MI-től

Swiftben a értéktípusok olyan típusok, amelyek példányai másolódnak az érték hozzárendelésekor vagy függvénybe való átadáskor. Minden független másolatnak saját tárolóhelye van.

Példák:

  • 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 // Érték másolása
p2.x = 10 // Megváltoztatjuk a másolatot, p1 nem változik

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

Előnyök:

  • Előre látható viselkedés, mivel a kód egy részében történt változások nem befolyásolják a többi másolatot.
  • Alapértelmezett biztonság helyi értékekkel való munkavégzéskor.

Hátrányok:

  • A másolás költséges lehet nagy struktúrák esetén.

Referencia típusokkal való összehasonlítás:

Jellemző Értéktípus Referencia típus
Hozzárendelés Az érték másolása A hivatkozás másolása
Módosítás A másolat módosítása Az eredeti objektum módosítása
Példa struct, enum, tuple, alap típusok class, closure