![]() |
|
||||||||
경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지 |
|
저는 그냥 귀찮아서 map 씁니다. ^^/
#include <map> typedef enum __Error { AAA, BBB, CCC } Error; map<__Error, AnsiString> ErrorMap; __Error Err_name; ErrorMap[AAA] = "AAA"; ErrorMap[BBB] = "BBB"; ErrorMap[CCC] = "CCC"; ErrorName->Caption = ErrorMap[Err_name]; 이렇게 쓰는데요 map을 쓰면 장점은 Err_name이 범위를 벗어난 값이 더라도 Out of Bound 에러가 안뜹니다. ㅋㅋ~ 범위를 벗어난값은 ""이 되죠, AnsiString의 생성자에서 가지는 디폴트값이 출력 됩니다. 단~ 메모리를 좀 잡아 먹습니다. 쿨럭~ map이 RB트리로 값을 유지 하기 때문에 4개의 경우 실제 4개만 있는게 아니라 내부적으로 더 많은 정보를 유지 하고 있어서 메모리를 좀 잡아 먹습니다. 관련 글 리스트
|
Copyright © 1999-2015, borlandforum.com. All right reserved. |
typedef enum __Error {AAA, BBB, CCC} ERROR
const AnsiString asError[3] = {"AAA", "BBB", "CCC"} ;
ERROR Err_name ;
Err_name = AAA ;
ErrorName->Caption = asError[Err_name] ;