Map 기본 형태
map<key, value> : 키와 값을 쌍 형태로 선언합니다.
반복자 (iteractor)
begin() : 시작 반복자를 반환
end() : end iterator를 반환
추가 및 삭제
insert(make_pair(key, value)) : 맵에 원소를 pair 형태로 추가
erase(key) : 맵에서 key (키값)에 해당하는 원소 삭제
clear() : 맵의 원소 전부 삭제
조회
find(key) : key (키값)에 해당하는 iterator를 반환합니다.
count(key) : key (키값)에 해당하는 원소 (value들)의 개수를 반환합니다.
기타
empty() : 맵이 비어 있으면 true 아니면 false를 반환
size() : 맵 원소들의 수를 반환
#include <iostream>
#include <map>
#include <string>
using namespace std;
int main(){
// map
// <string, int> => <key, value>
map< string, int > m;
// insert(key,value)
m.insert(make_pair("a", 1));
m.insert(make_pair("b", 2));
m.insert(make_pair("c", 3));
m.insert(make_pair("d", 4));
m.insert(make_pair("e", 5));
m["f"] = 6; // also possible
// erase(key)
m.erase("d");
m.erase("e");
m.erase(m.find("f")); // also possible
// empty(), size()
if(!m.empty()) cout << "m size: " << m.size() << '\n';
// find(key)
cout << "a: " << m.find("a")->second << '\n';
cout << "b: " << m.find("b")->second << '\n';
// count(key)
cout << "a count: " << m.count("a") << '\n';
cout << "b count: " << m.count("b") << '\n';
// begin(), end()
cout << "traverse" << '\n';
// map< string, int >::iterator it; also possible
for(auto it = m.begin(); it != m.end(); it++){
cout << "key: " << it->first << " " << "value: " << it->second << '\n';
}
return 0;
}
'DevLog > C & C++' 카테고리의 다른 글
C++ 포인터 개념 (0) | 2021.02.04 |
---|---|
C++ 구조체(Struct) (0) | 2021.01.25 |
C++ 오버로딩과 오버라이딩 (0) | 2021.01.24 |
C++ 가비지 컬렉션, 참조 카운트 (0) | 2021.01.24 |
C++ 스마트포인터 (0) | 2021.01.23 |