2-5. 열거형(enum)

Crat3 ㅣ 2023. 5. 4. 19:51

1. 열거형(enum)

상수를 쓸 때 직접 const int로 지정하는 방법도 있지만, 더 활용하기 쉬운 방법이 있다.

enum ENUM_SRP
{
    ENUM_SCISSORS = 1,
    ENUM_ROCK,
    ENUM_PAPER
};

단, 초기값을 따로 지정해주지 않으면 첫 값은 0부터 시작한다.

const int 값들은 메모리 영역에 저장이 되지만

enum의 값들은 저장이 되지 않은 채로 정수로 대체된다.

=> 따라서 메모리의 사용을 줄일 수 있다.

 

2. #define

'#'이 붙은 것을 전처리 지시문이라고 한다(전처리 -> 컴파일 -> 링크).

 

참고) #include <iostream>

iostream 파일을 찾아 해당 내용을 그대로 복사 붙여넣기 한다는 뜻

 

#define DEFINE_SCISSORS 1
#define DEFINE_TEST cout << "TEST on going" << endl;
TEST;
/* OutPut : "TEST on going"*/

단, define은 해당 내용을 단순히 다른 내용으로 교체하는 것에 불과하므로 조심하여야 한다.

이런 이유로 enum을 우선적으로 사용한다.

'기초 C++ 스터디' 카테고리의 다른 글

3-2. 스택 프레임  (0) 2023.05.09
3-1. 함수(Function)  (0) 2023.05.09
2-4. 가위바위보  (0) 2023.05.04
2-2. 반복문(For, While)  (0) 2023.05.04
2-1. 분기문(If)  (0) 2023.05.04