C#객체지향

enum 기본

`enum`은 상태나 종류를 숫자 대신 의미 있는 이름으로 표현할 때 가장 먼저 떠올릴 수 있는 C# 문법입니다.

마지막 수정 2026년 3월 16일

기본 패턴

csharp
public enum GameState
{
    Idle,
    Playing,
    Paused,
    GameOver
}

설명

  • enum은 관련 있는 선택지를 한 타입으로 묶습니다.
  • 숫자만 쓰는 코드보다 의미가 분명해서 읽기 쉽습니다.
  • 상태값, 메뉴 종류, 방향값처럼 정해진 목록을 표현할 때 좋습니다.

짧은 예제

csharp
GameState state = GameState.Playing;

if (state == GameState.Playing)
{
    Console.WriteLine("게임 진행 중");
}

빠른 정리

항목설명
enum정해진 선택지 집합
GameState.Playingenum 값 사용
switchenum 분기 처리와 궁합이 좋음

주의할 점

enum은 내부적으로 숫자 기반입니다. 저장이나 통신에 바로 숫자를 쓰면 의미가 흐려질 수 있으니 가능한 이름 기준으로 다루는 편이 좋습니다.