U C# dvije glavne kategorije tipova su vrijednosni tipovi (kao što su strukture) i referentni tipovi (kao što su klase). Budući da je struktura (ili struktura) vrsta vrijednosti, ona je usredotočena na podatke.
Struktura može pohraniti atribute i srodne metode koje se po mogućnosti ne fokusiraju na ponašanje.
Kako deklarirati strukturu
Svaka deklaracija strukture mora imati strukturirati ključna riječ. Ispred ključne riječi struct stavite modifikator pristupa i uključite ime i par vitičastih zagrada iza njega. Evo kako deklarirati strukturu pod nazivom Game:
javnost struct Game {}
Kako popuniti strukturu
Struktura pohranjuje podatke unutar svojih vitičastih zagrada, u obliku atributa, konstruktora, metoda, događaja itd.
javnost igra strukture
{
javnost naziv niza;
javnost opis niza;
javnostint razine;javnostigra(naziv niza, opis niza, int razine){
ovaj.name = ime;
ovaj.description = opis;
ovaj.levels = razine;
}
public override string ToString() => $"Ime: {name}, Opis: {description}, Razine: {razine}";
}
Game struktura sada ima tri atributa, konstruktor i metodu. Ovo su tri primarne komponente C# strukture, koje su također tri primarne komponente a C# klasa.
Kako stvoriti strukturnu varijablu
Svaka instanca C# strukture poznata je kao a varijabla. Postoje dva načina za stvaranje a varijabla iz strukture. Možete koristiti konstruktor:
Igra igra1 = nova igra("Poképon KRENI", "Lorem ipsum dolor sit amet.", 50);
Ili možete dodijeliti vrijednosti pojedinačnim atributima strukture pomoću operatora točka (.):
Igra igra1;
igra1.naziv = "Poképon KRENI";
igra1.opis = "Lorem ipsum dolor sit amet.";
game1.razine = 50;
Oba pristupa postižu isti rezultat. Gornji kod koristi C# za razvoj objekta igre pod nazivom Pokémon GO koji ima kratak opis i 50 razina. Dakle, sada možete koristiti objekt game1.
Konzola.WriteLine(igra1.ToString());
Ovo ispisuje sljedeći izlaz na konzolu:
Ime i prezime: pokémon GO, Opis: Lorem ipsum dolor sit amet., Razine: 50
Razlike između strukture i klase
Struktura i klasa imaju sličan izgled, ali imaju mnogo značajnih razlika. Oni koriste različite ključne riječi za deklaraciju. A strukture ne podržavaju ni nulte reference ni nasljeđivanje.