5. ** Nabrojivi i strukturni tip **

5.1. Enumeracije

Enumerations - enumeracije su specijalni vrednosni tipovi podataka koji omogućava da zadate grupu imenovanih numeričkih konstanti.

Kada hoćete da deklarišete enumeraciju u C# programskom jeziku; koristite ključnu reč enum izvan funkcija kao što to radite sa strukturama.

enum  ime_enumeracije
{
vrednost1;     vrednost2;     … }

Jednom kad ste deklarisali enumeraciju, možete da je koristite na tačno isti način kao i bilo koji drugi numerički tip podataka. Vrednostima enumeracije možete dodeljivati jedino celobrojnu vrednost. Ukoliko želite vrednostima enumeracije da dodeljujete vrednosti tipa stringova, onda bolje razmislite o tome da koristite strukturu u kojoj će nabrajanje biti jedan od članova strukture.

Kako se dodeljuju vrednosti strukturi enumeracija?

Jednostavno, ako vrednostima niste dodelili nikakvu celobrojnu vrednost, onda se podrazumeva da nabrajanje počinje od 0 kao i u nizovima.
enum  ime_enumeracije
{
vrednost1 = 0;     vrednost2 = 1;     … }

Međutim ukoliko vi dodate neku vašu celobrojnu vrednost, posle nje će svaka vrednosti biti uvećana za 1. Npr.
enum  ime_enumeracije
{
vrednost1 = 1;     vrednost2;     … }
To znači da je u ovom slučaju vrednost2 jednaka 2, sledeća vrednost bi imala vrednost 3 itd. Vi možete imati iste vrednosti u stavkama enumeracije ali ne vidim poentu zašto bi ste to radili. Enumeracije su po defaultu tipa integer ali vi možete to promeniti u drugi celobrojni tip podataka.
enum ime_enumeracije : byte { ... }