• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

질문) 4:55초 switch문에 상수사용하기

20.12.02 18:50 작성 조회수 155

0

안녕하세요. 이제 강좌시리즈 시작하며 처음 파트3에서 막혀 문법부터 보고 있습니다.

4:55 부근 입니다.

Switch문에 Choice와 상수화된 변수들 ROCK... 등이 전혀 연관이 없어 보여서 미완성 코드로 보였는데요.

Const를 int ROCK = 1;에 붙히는 순간 ROCK과 1은 같은 것이 되는거네요? 

C언어에서 #define ROCK 1; 선언하는 것과 비슷한 느낌 맞나요?

답변 2

·

답변을 작성해보세요.

1

네 그렇습니다.

결국 다 상수를 만든다는 측면에서 비슷하긴 한데,
#define ROCK 1 이것은 말 그대로 'ROCK'이라고 되어 있는 부분을
(컴파일 바로 이전 단계인)전처리 단계에서 '1' 이라는 글자로 바꾸는 것에 불과합니다.

C++에서 #define을 사용할 땐 꼭 정수만 사용하는 것은 아니고,
각종 매크로를 만들 때도 유용하게 사용됩니다.
그러나 정작 '상수'를 만들고자 할 때는 #define보다는
const int 을 이용해서 상수 변수를 만들거나,
enum { ROCK = 1 } 과 같은 방법을 이용해 만드는 것이 더 바람직합니다.

0

sc6re님의 프로필

sc6re

질문자

2020.12.03

답변이 힘이 됩니다. 감사합니다.