Sobes.tech
Junior — Middle

Μπορείτε να εξηγήσετε την έννοια των τύπων δεδομένων αναφοράς;

sobes.tech AI

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

Οι τύποι δεδομένων αναφοράς στη C# είναι τύποι που αποθηκεύουν όχι τα δεδομένα οι ίδιοι, αλλά μια αναφορά στη περιοχή μνήμης όπου βρίσκονται αυτά τα δεδομένα.

Κύρια χαρακτηριστικά:

  • Όταν ανατίθεται μια μεταβλητή τύπου αναφοράς, αντιγράφεται η αναφορά, όχι το αντικείμενο.
  • Πολλές μεταβλητές μπορούν να αναφέρονται στο ίδιο αντικείμενο.
  • Οι αλλαγές μέσω μιας αναφοράς αντικατοπτρίζονται σε όλες τις άλλες.

Παραδείγματα τύπων αναφοράς: κλάσεις (class), συμβολοσειρές (string), πίνακες, delegates.

Παράδειγμα:

class Person { public string Name; }

Person p1 = new Person { Name = "Иван" };
Person p2 = p1; // p2 αναφέρεται στο ίδιο αντικείμενο
p2.Name = "Пётр";
Console.WriteLine(p1.Name); // Θα εμφανίσει "Пётр"

Εδώ φαίνεται ότι η αλλαγή μέσω του p2 επηρεάζει το p1, καθώς και οι δύο μεταβλητές αναφέρονται στο ίδιο αντικείμενο.