Στην C#, οι δύο κύριες κατηγορίες τύπων είναι οι τύποι τιμών (όπως οι δομές) και οι τύποι αναφοράς (όπως οι κλάσεις). Επειδή μια δομή (ή δομή) είναι τύπος τιμής, είναι δεδομένη.

Μια δομή μπορεί να αποθηκεύσει χαρακτηριστικά και σχετικές μεθόδους που, κατά προτίμηση, δεν εστιάζουν στη συμπεριφορά.

Πώς να δηλώσετε μια δομή

Κάθε δήλωση δομής πρέπει να έχει το struct λέξη-κλειδί. Πριν από τη λέξη-κλειδί struct με έναν τροποποιητή πρόσβασης και συμπεριλάβετε ένα όνομα και ένα ζεύγος σγουρά στηρίγματα μετά από αυτό. Δείτε πώς μπορείτε να δηλώσετε μια δομή που ονομάζεται Παιχνίδι:

δημόσιο struct παιχνίδι {}

Πώς να συμπληρώσετε μια δομή

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

δημόσιο struct Παιχνίδι
{
δημόσιο όνομα συμβολοσειράς?
δημόσιο περιγραφή συμβολοσειράς?
δημόσιοενθ επίπεδα?

δημόσιοΠαιχνίδι(όνομα συμβολοσειράς, περιγραφή συμβολοσειράς, ενθ επίπεδα){
Αυτό.name = όνομα;
Αυτό.description = περιγραφή;
Αυτό.levels = επίπεδα;
}

instagram viewer

δημόσια παράκαμψη συμβολοσειράς ToString() => $"Όνομα: {name}, Περιγραφή: {description}, Επίπεδα: {levels}";
}

Η δομή του παιχνιδιού έχει τώρα τρία χαρακτηριστικά, έναν κατασκευαστή και μια μέθοδο. Αυτά είναι τρία κύρια συστατικά μιας δομής C#, τα οποία είναι επίσης τρία από τα κύρια συστατικά του a Κατηγορία C#.

Πώς να δημιουργήσετε μια μεταβλητή δομής

Κάθε παρουσία μιας δομής C# είναι γνωστή ως a μεταβλητός. Υπάρχουν δύο τρόποι για να δημιουργήσετε ένα μεταβλητός από μια κατασκευή. Μπορείτε να χρησιμοποιήσετε έναν κατασκευαστή:

Παιχνίδι παιχνίδι 1 = νέο παιχνίδι("Pokémon GO", "Lorem ipsum dolor sit amet.", 50);

Ή μπορείτε να αντιστοιχίσετε τιμές σε μεμονωμένα χαρακτηριστικά μιας δομής χρησιμοποιώντας τον τελεστή dot (.):

Παιχνίδι παιχνίδι1;
παιχνίδι1.όνομα = "Pokémon GO";
παιχνίδι1.περιγραφή = "Lorem ipsum dolor sit amet.";
game1.levels = 50;

Και οι δύο προσεγγίσεις επιτυγχάνουν το ίδιο αποτέλεσμα. Ο παραπάνω κώδικας χρησιμοποιεί C# για να αναπτύξει ένα αντικείμενο παιχνιδιού που ονομάζεται Pokémon GO που έχει μια σύντομη περιγραφή και 50 επίπεδα. Έτσι, τώρα μπορείτε να χρησιμοποιήσετε το αντικείμενο game1.

Κονσόλα.WriteLine(παιχνίδι 1.ToString());

Αυτό εκτυπώνει την ακόλουθη έξοδο στην κονσόλα:

Όνομα: Pokémon GO, Περιγραφή: Lorem ipsum dolor sit amet., Επίπεδα: 50

Οι διαφορές ανάμεσα σε μια δομή και μια τάξη

Μια κατασκευή και μια κατηγορία έχουν παρόμοια εμφάνιση, αλλά έχουν πολλές αξιοσημείωτες διαφορές. Χρησιμοποιούν διαφορετικές λέξεις-κλειδιά για τη δήλωση. Και οι δομές δεν υποστηρίζουν μηδενικές αναφορές ούτε κληρονομικότητα.