Sobes.tech
Junior

Kas yra reikšmių tipai?

sobes.tech AI

Atsakymas iš AI

Swift kalbose reikšmių tipai yra tipai, kurių egzemplioriai kopijuojami priskyrimo ar perdavimo funkcijai metu. Kiekviena nepriklausoma kopija turi savo saugojimo vietą.

Pavyzdžiai:

  • 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 // Vertės kopija
p2.x = 10 // Keičiamas kopijos, p1 nesikeičia

print(p1.x) // Išvestis: 1
print(p2.x) // Išvestis: 10

Privalumai:

  • Prognozuojamas elgesys, nes pakeitimai vienoje kodo dalyje neįtakoja kitų kopijų.
  • Standartinė saugumas dirbant su vietiniais reikšmėmis.

Trūkumai:

  • Kopijavimas gali būti brangus didelėms struktūroms.

Palyginimas su nuorodų tipais:

Savybė Reikšmės tipas Nuorodų tipas
Priskyrimas Reikšmės kopijavimas Nuorodos kopijavimas
Pakeitimas Keičia kopiją Keičia originalų objektą
Pavyzdys struct, enum, tuple, pagrindiniai tipai class, closure