Unity3D/C#

C# 강좌 Day-04 (enum)

일등하이 2021. 8. 14. 23:13
반응형

사용자 지정형식 

struct, enum, class, interface

 

enum (열거형식)

상수를 문자열로 대치 하여 선언 

 

열거형식 선언

> class내부 또는 namespace내부에 선언한다 

using System;

namespace HelloWorld
{
    enum eState
    {
        Idle, Run, Attack, Die
    }

    class Program
    {
        static void Main(string[] args)
        {
            
        }
    }
}
using System;

namespace HelloWorld
{
    class Program
    {
        enum eState
        {
            Idle, Run, Attack, Die
        }

        static void Main(string[] args)
        {
            
        }
    }
}

 

 

상수의 값은 0부터 1씩 증가 되어 자동으로 할당된다 

 

 

다음과 같이 값을 지정해줄수도 있다 

 

 

열거형식 변수 선언, 변수에 값 할당 및 출력 

using System;

namespace HelloWorld
{
    class Program
    {
        enum eState
        {
            Idle, Run, Attack, Die
        }

        static void Main(string[] args)
        {
            eState state;
            state = eState.Attack;
            Console.WriteLine(state);
        }
    }
}

 

 

열거형식을 정수로 변환 

using System;

namespace HelloWorld
{
    class Program
    {
        enum eState
        {
            Idle = 100, Run = 200, Attack, Die
        }

        static void Main(string[] args)
        {
            eState state;
            state = eState.Attack;
            Console.WriteLine(state);

            int state2 = Convert.ToInt32(state);
            Console.WriteLine("{0}", state2);
        }
    }
}

 

 

정수를 열거형식으로 변환 

eState state3 = (eState)100;
Console.WriteLine(state3);

 

 

만약 상수 값이 틀렸다면 정수로 나옴

eState state3 = (eState)101;
Console.WriteLine(state3);

 

반응형