나열형 상수 이넘(enum).

예전부터 한두번씩 봐왔던놈입니다.

이놈의 특징은
enum Days = {Mon, Tue, ... , Sun};
이렇게 선언하고 맴버들을 초기화하지 않았다면 Mon=0이고 차례대로 증가합니다.
즉 Mon이 1이고 중간에 초기화가 없다면 Sun은 6이되겠죠.

union과 같이 쓰임세를 잘 모르는 놈중 하나입니다..

union은 더더욱 감이 안잡힙니다..
누수가 빈번히 일어나는 이상한 예약어죠.

뭐.. 그냥 간단히 상수에대해 말해보겠습니다. 뜬금없지만

상수를 선언하는 방법은 2가지가 있다고 대충 볼수 있습니다.
#define에 의한 상수화 와
const에 의한 상수화 죠.

#define은 옛날부터 많이 써왔지만 이제는 상수화를 위해 사용하는 것은 적어졌습니다.
#define문은 상수화라기보다는 대체에 가깝기 떄문이라고 생각됩니다.

#define ABC 123 이라고 있다면
그 코드에 ABC라는 모든 문자는 123으로 대체됩니다.
// a= 1 + ABC 이것은 1 + 123과 같은 의미가 됩니다.

const는 변수를 선언과 동시에 상수화시켜버리는것입니다.
int ABC=0; 이라고 한다면 ABC는 변수죠. 하지만 선언시 앞에 const를 붙여준다면
const int ABC = 0; ABC는 평생 123이되어야만하죠.
 

+ Recent posts