Sobes.tech
Junior

Τι είναι οι τύποι τιμών;

sobes.tech AI

Απάντηση από AI

Οι τύποι τιμών στο Swift είναι τύποι των οποίων τα αντίγραφα αντιγράφονται κατά την ανάθεση ή τη μεταβίβαση σε μια συνάρτηση. Κάθε ανεξάρτητο αντίγραφο έχει τη δική του αποθήκευση.

Παραδείγματα:

  • 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 // Αντίγραφο της τιμής
p2.x = 10 // Αλλάζουμε το αντίγραφο, το p1 δεν αλλάζει

print(p1.x) // Έξοδος: 1
print(p2.x) // Έξοδος: 10

Πλεονεκτήματα:

  • Προβλέψιμη συμπεριφορά, καθώς οι αλλαγές σε ένα μέρος του κώδικα δεν επηρεάζουν άλλα αντίγραφα.
  • Προεπιλεγμένη ασφάλεια κατά την εργασία με τοπικές τιμές.

Μειονεκτήματα:

  • Η αντιγραφή μπορεί να είναι δαπανηρή για μεγάλες δομές.

Σύγκριση με τύπους αναφοράς:

Χαρακτηριστικό Τύπος τιμής Τύπος αναφοράς
Ανάθεση Αντιγραφή της τιμής Αντιγραφή της αναφοράς
Αλλαγή Αλλάζει το αντίγραφο Αλλάζει το αρχικό αντικείμενο
Παράδειγμα struct, enum, tuple, βασικοί τύποι class, closure