Sobes.tech
Junior — Middle

Ποια μορφή μνήμης χρησιμοποιείται για την αποθήκευση αντικειμένων τύπου αναφοράς;

sobes.tech AI

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

Τα αντικείμενα τύπου αναφοράς στο iOS (π.χ. κλάσεις σε Swift ή Objective-C) αποθηκεύονται στη διαχειριζόμενη σωρό (heap). Είναι μια περιοχή μνήμης που κατανέμεται δυναμικά, όπου δημιουργούνται τα αντικείμενα και παραμένουν ζωντανά όσο υπάρχουν αναφορές σε αυτά.

Σε αντίθεση με τους τύπους αξίας (struct, enum), που συνήθως αποθηκεύονται στη στοίβα ή μέσα σε άλλα αντικείμενα, τα αντικείμενα τύπου αναφοράς κατανέμονται στο σωρό, και οι μεταβλητές περιέχουν δείκτες (αναφορές) σε αυτά.

Παράδειγμα:

class Person {
    var name: String
    init(name: String) {
        self.name = name
    }
}

let person = Person(name: "Ivan") // το αντικείμενο δημιουργείται στο σωρό

Εδώ, το person είναι μια αναφορά σε ένα αντικείμενο στο σωρό.