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}";
}

instagram viewer

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.