#include < map >
< map > 헤더파일 안에 구현되어 있음
▶ 변수 선언:
1. 기본형
map <key_type, value_type> 변수명
2. 그 외
map <key_type, value_type> 변수명(변수) :"변수"를 복사한 새로운 변수 생성
map <key_type, value_type> 변수명(iter_1, iter_2) :"iter_1"부터 "iter_2"까지 복사한 새로운 변수 생성
▶ Iterators:
_.begin() : 첫번째 요소를 가리키는 iterator를 반환
_.end() : 마지막 요소의 다음을 가리키는 iterator를 반환
(std::map<key_type, value_type>::iterator → map형 iterator변수 선언)
▶ Capacity:
_.empty() : 해당 변수의 size가 0인지 아닌지를 알려줌 (size == 0 ? 1 : 0)
_.size() : 해당 변수의 size를 반환
▶ Access:
_[key] : key로 식별된 요소의 매핑 된 값에 대한 참조를 반환
_.at(key) : key로 식별된 요소의 매핑 된 값에 대한 참조를 반환
▶ Insert & Erase:
1. 삽입
_.insert({key, value}) : 해당 변수에 새 요소를 삽입하고, 삽입 된 요소 수만큼 변수의 크기를 늘림
(동일한 키가 존재할때에는 삽입되지 않는다 → multimap 사용)
( "변수[key] = value" == "insert({key, value})" )
|insert(std::pair<key_type, value_type>(key, value)) : 단일 요소 추가
|insert(iter, std::pair<key_type, value_type>(key, value)) : iterator 추가
_.swap(변수) : 해당 변수의 내용을 동일한 타입의 "변수"의 내용과 교환
2. 삭제
_.erase() : 해당 요소를 제거하고, 제거된 수만큼 변수의 크기 줄어듬
|erase(iter) : iter가 가리키는 요소 제거
|erase(key) : key가 가리키는 요소 제거, 지워진 요소의 수 반환
|erase(iter_1, iter_2) : iter_1부터 iter_2까지의 모든 요소 제거
_.clear() : 변수의 모든 요소를 제거하고 크기를 0으로 만듬
_ = std::map<key, value >() : 모든 내용 삭제
▶ Etc:
.find(key) : 변수에서 key에 해당하는 요소를 검색하고 발견 되면 해당 요소의 const_iterator를 반환하고, 그렇지 않으면 .end()(=iterator)의 값을 반환함
.count() : 변수에서 key에 해당하는 요소를 검색하고 발견되면 1 그렇지 않으면 0을 반환