[C/C++] map STL

김동현·2021년 6월 7일
0

C/C++

목록 보기
3/3

map

: key와 value가 쌍으로 저장되는 container. 연관 container들은 멤버 변수가 거의 동일하다.

map의 사용법

1. map의 선언

map<[Data type1], [Data type2]> [변수이름];

map<int, int> m;		//기본 선언 방법
map<int> m(pred);		//pred로 정렬기준을 세움
map<int> m2(m1);		//복사 생성자

논리 연산자 (==, >=, != 등)가 사용 가능하다.
연산자 m[key] = val; 을 통해서 원소(key, value)를 추가 또는 수정이 가능하다.

2. map에 데이터 삽입

m.insert(<key>, <value>);

이때 map은 key의 중복을 허용하지 않는다. (*key가 중복된다면 key에 맞는 value를 찾을 수 없다.)

3. map에서 데이터 삭제

m.erase(index);					
m.erase(m.begin() + 2);			//특정 위치의 요소 삭제

m.erase(<key>);					//key값을 기준으로 요소 삭제

m.erase(m.begin(), m.end());	//map의 모든 요소 삭제
m.clear();

4. map에서 데이터 찾기

map에서 data를 찾을 때는 iterator를 사용한다. 데이터를 찾지 못했을 경우, iterator는 map.end()를 반환한다.

m.find(<key>);  		//iterator를 반환하게 된다.

5. 기타 멤버 함수

m.empty();		//map이 비어있으면 true, 아니면 false 반환
m.size();		//map 원소들의 수를 반환

0개의 댓글

Powered by GraphCDN, the GraphQL CDN