In C#, le due categorie di tipi principali sono i tipi di valore (come le strutture) e i tipi di riferimento (come le classi). Poiché una struttura (o struttura) è un tipo di valore, è incentrata sui dati.
Uno struct può memorizzare attributi e metodi correlati che, preferibilmente, non si concentrano sul comportamento.
Come dichiarare una struttura
Ogni dichiarazione struct deve avere il struttura parola chiave. Fai precedere la parola chiave struct con un modificatore di accesso e includi un nome e un paio di parentesi graffe dopo di esso. Ecco come dichiarare uno struct chiamato Game:
pubblico struct Gioco {}
Come popolare una struttura
Una struttura memorizza i dati tra parentesi graffe, sotto forma di attributi, costruttori, metodi, eventi, ecc.
pubblico struttura del gioco
{
pubblico nome della stringa;
pubblico descrizione della stringa;
pubblicoint livelli;pubblicoGioco(nome stringa, descrizione stringa, int livelli){
questo.nome = nome;
questo.descrizione = descrizione;
questo.livelli = livelli;
}
public override stringa ToString() => $"Nome: {nome}, Descrizione: {descrizione}, Livelli: {livelli}";
}
La struttura del gioco ora ha tre attributi, un costruttore e un metodo. Questi sono tre componenti primari di una struttura C#, che sono anche tre dei componenti primari di a Classe C#.
Come creare una variabile struttura
Ogni istanza di una struttura C# è nota come a variabile. Ci sono due modi per creare un variabile da una struttura Puoi usare un costruttore:
Gioco gioco1 = nuovo gioco("Pokélun VAI", "Lorem ipsum dolor sit amet.", 50);
Oppure puoi assegnare valori ai singoli attributi di uno struct usando l'operatore punto (.):
Gioco gioco1;
nome.gioco1 = "Pokélun VAI";
game1.description = "Lorem ipsum dolor sit amet.";
livelli.gioco1 = 50;
Entrambi gli approcci ottengono lo stesso risultato. Il codice sopra usa C# per sviluppare un oggetto di gioco chiamato Pokémon GO che ha una breve descrizione e 50 livelli. Quindi, ora puoi usare l'oggetto game1.
Console.Linea di scrittura(gioco1.Accordare());
Questo stampa il seguente output sulla console:
Nome: Pokémon GO, Descrizione: Lorem ipsum dolor sit amet., Livelli: 50
Le differenze tra una struttura e una classe
Una struttura e una classe hanno un aspetto simile, ma presentano molte differenze notevoli. Usano parole chiave diverse per la dichiarazione. E le strutture non supportano né riferimenti nulli né ereditarietà.