Hirdetés

Aktív témák

  • pmonitor

    aktív tag

    Felsorolásra(enum) a következő példa/minta kódot írtam:
    using System;

    namespace TesztCsharp
    {
    internal class Felsorolas
    {
    static void Main(string[] args)
    {
    Szinek szin = Szinek.Kek;
    if (szin is ValueType) Console.WriteLine("Ertek tipus.\n");
    else Console.WriteLine("Referencia tipus.\n");
    string str = Enum.GetName(typeof(Szinek), szin);
    Console.WriteLine(str);
    Console.WriteLine("");
    foreach (string item in Enum.GetNames(typeof(Szinek)))
    {
    Console.WriteLine(item);
    }
    Console.ReadKey(true);
    return;
    }
    enum Szinek : long { Piros = 1, Feher, Zold, Kek, Sarga = 6, Lila, Narancs, Fekete };
    }
    }

    A kimenet:

    Ertek tipus.

    Kek

    Piros
    Feher
    Zold
    Kek
    Sarga
    Lila
    Narancs
    Fekete

    Figyeljük meg, hogy az enum kulcsszóval deklarált típusnévvel létrehozott változó érték típus!!! Ami nem véletlen. Az enum típusa csak beépített numerikus egész lehet. Tehát 1, 2, 4, vagy 8 byte-os egész. Alapesetben(ha nem adjuk meg) int. A System.Enum osztály viszont adattagok nélküli referencia típus.
    Az enum elemei alapesetben 0-val kezdődnek, és mindig 1-el nőnek. Ha eltérő számot adunk meg, akkor nyilván onnantól nő egyesével az elemek értéke.

Aktív témák

Hirdetés