일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- MAME
- 포커
- 포커게임
- 옥션해킹
- 온라인게임
- 카일레라
- 게임 개발
- 카일레라서버
- 영어단어게임
- 써치아이
- 영어단어
- 보드게임
- 틀린그림 찾기
- 서치아이
- 윈윈
- 맞고
- 프로그램 외주
- holdem
- 판매
- 옥션소송
- 틀린그림찾기
- 상호링크
- 홀뎀
- 프로그램 개발
- 게임 외주
- 맞고게임
- Mame32
- 고스톱
- 티스토리 초대장
- 윈윈전략
- Today
- Total
kyuseo의 게임 프로그래밍
STL map 사용시 할당 안된 값의 초기값은 무엇인가? 본문
개요.. |
STL map 사용시 할당 안된(초기화 되지 않은) 값의 초기값은 무엇인지 알아봅니다.
코드 출처 : CK IPod, IPhone Game Engine
Case 1 포인터 맵의 경우 |
아래와 같이 포인터로 구성된 map 의 경우에는 할당 안된 값은 NULL로 초기화되어 있습니다.
int n1 = 1; int n2 = 2; map< int, int* > _map;
_map[1] = &n1; _map[2] = &n2;
int* p1 = _map[1]; // *p1 = 1 int* p2 = _map[2]; // *p2 = 2 int* p3 = _map[3]; // *p3 = NULL
|
Case 2 일반 변수의 경우 |
아래와 같이 일반 변수로 구성된 map 의 경우에는 할당 안된 값은 0으로 초기화되어 있습니다.
int n1 = 1; int n2 = 2; map< int, int > _map;
_map[1] = n1; _map[2] = n2;
int p1 = _map[1]; // p1 = 1 int p2 = _map[2]; // p2 = 2 int p3 = _map[3]; // p3 = 0
|