게임개발 캠프 5일차

IIRU·2026년 5월 20일

< enum >

enum Job {
	Warrior = 1,
	Mage = 2,
	Rogue = 3
};

enum은 객관식과 비슷합니다.
위 코드처럼 Job을 enum으로 만들어두었을 때

Job job = Mage; //job을 선언

switch (job) {
	case 1:
		cout << "직업 : 전사" << endl; // 1
		break;
	case 2:
		cout << "직업 : 마법사" << endl; // 2
		break;
	case 3:
		cout << "직업 : 도적" << endl; // 3
		break;
	defalut:
		break;
	}

위 코드에서 job을 Mage라고 하면 2를 출력하게되어서
직업 : 마법사
를 출력하게 됩니다.

여기서 조심해야할 부분이 몇개 있는데
1. 처음 수가 지정되어있으면 자동으로 +1 시켜서 할당해준다.
2. 처음 수가 지정되어있지 않으면 0이다.
3. 지정된 수가 있으면 지정한 수에서 +1이다.

예를 들어보자면

enum Job {
	Warrior = 1,
	Mage,
	Rogue
};

이렇게 될 경우 Mage는 2, Rogue는 3입니다.

enum Job {
	Warrior,
	Mage,
	Rogue
};

이렇게 될경우 0, 1, 2 순서입니다.

enum Job {
	Warrior = 2,
	Mage,
	Rogue
};

2, 3, 4입니다.

enum Job {
	Warrior,
	Mage = 2,
	Rogue
};

0, 2, 3입니다.

enum을 아직 제대로 써본적은 없으나 사용한다면 나름 사용하기 편리할 것 같습니다.

전체 소스코드 입니다.

// int char float double string bool
// 커스텀 : struct
// 
// 커스텀 : enum
// 
// 객관식
// 1. ㅁㅁ 2.ㅁㅁ 3. ㅁㅁ
// 
// 

enum Job {
	Warrior = 1,
	Mage,
	Rogue
};
//처음 수가 지정되어있으면 자동으로 +1 시켜서 할당해준다.
//처음 수가 지정되어있지 않으면 0
//지정한 수에서 +1
//

#include<iostream>

using namespace std;

int main() {

	Job job = Mage;

	switch (job) {
	case 1:
		cout << "직업 : 전사" << endl; // 1
		break;
	case 2:
		cout << "직업 : 마법사" << endl; // 2
		break;
	case 3:
		cout << "직업 : 도적" << endl; // 3
		break;
	defalut:
		break;
	}

}
profile
초보 개발자 블로그입니다!

0개의 댓글