RSS구독하기:SUBSCRIBE TO RSS FEED
즐겨찾기추가:ADD FAVORITE
글쓰기:POST
관리자:ADMINISTRATOR

◎ 예약어 enum

* 열거자라고 불리는 집합의 원소들(식별자)을 선언 할수 있게 한다.
* 이 원소들의 유한 집합에 이름을 부여할 수 있게 한다.


enum day {sun,mon,tue,wed,thu,fri,sat};
이 선언은 사용자 정의 형 enum day를 생성한다. 예약어 enum다음에 오는 day가 태그 이름이다.  

열거자 = 식별자 : sun, mon ... sat등이며 int 형상수.

첫번째 원소는 0을 갖고 열거 순서에 따라 순차적인 정수 값을 갖는다.
     ⇒ enum day {sun=0, mon=1, tue=2, wed=3, thu=4, fri=5, sat=6};

enum day d1,d2;
d1,d2를 enum day형으로 선언한 것. 이 변수들은 집합내의 원소들만 값으로 가질수 있다.
d1 = fri; d1은 5로 저장되있다. int형으로 값을 찍으면 5가 나온다.


※ enum자체는 자료형이 아니다. enum day가 자료형이다. 열거자는 초기화 될 수 있다. 열거자가 선언된 후 바로 변수를 선언할 수 있다.


ex1) enum suit {clubs=1, diamonds, hearts, spades} a, b, c;

clubs는 1로 초기화되있다. a, b, c는 같이 선언되었다.
clubs가 1로 초기화 되었기 때문에 diamonds=2, hearts=3, spades=4의 값을 갖는다.
enum suit {clubs=1, diamonds, hearts, spades} a, b, c;
         └> 형지정                                               └> 이 자료형의 변수

ex2) enum fruit{apple=7, peat, orange=3, lemon} fri;
apple가 7로 초기화 되어서 peat는 8의 값을 갖는다. orange가 3의 값이여서 lemon은 4 의 값을 갖는다.

ex3) enum veg {beet=17, corn=17}; vege1, vege2; 
동일한 값이 여러 식별자에게 허용될 수 있지만, 식별자는 중복되면 안되고 유일해야함.

ex4) enum {fir, pine} tree;
테그 이름이 반드시 필요한 것은 아니다. 테그 이름이 없으므로 변수 tree만이 선언되었을 뿐
 enum {fir, pine}형으로 다른 변수를 선언할 수 없다.


※ 일반적으로, 열거자는 프로그램-지정 상수로 취급, 프로그램의 명확성을 위해 사용. 만일 필요하다면, 열거자의 기본 값은 캐스트를 사용해 얻을 수도 있다. 한 함수내의 변수와 열거자는 서로 다른 유일한 식별자를 가져야 한다.


에제 :

Class Student

{

public:

enum {

Kim = 1,

Jung = 2,

Lee = 3

};

void Get(int student);

};


enum내 항목을 참조하려면

Student s;

s.Get(Student::Kim);

s.Get(Student::Jung);

s.Get(Student::Lee);

2008/05/17 02:38 2008/05/17 02:38
이 글에는 트랙백을 보낼 수 없습니다
웅쓰:웅자의 상상플러스
웅자의 상상플러스
전체 (379)
게임 (5)
영화 (2)
기타 (23)
맛집 (5)
영어 (2)
대수학 (3)
형태소 (5)
Hacking (9)
Linux (112)
HTML (48)
Application_developing (48)
Web_developing (102)
Window (11)
«   2024/05   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
  1. 2016/01 (1)
  2. 2015/12 (3)
  3. 2015/10 (3)
  4. 2015/03 (2)
  5. 2015/01 (4)