[c++] 맵(map) 컨테이너
C++ 표준 라이브러리는 다양한 데이터 구조를 제공하는데, 그 중 하나가 map 컨테이너이다. Map은 쌍(pair)으로 이루어진 요소들을 관리하는 연관 컨테이너로, 각 요소는 키(key)와 값(value)으로 구성되어 있다.
Map 컨테이너의 기본 동작
Map 컨테이너는 키를 기반으로 고유한 요소를 관리한다. 다음은 Map 컨테이너를 사용하는 간단한 예제이다.
#include <iostream>
#include <map>
#include <string>
int main() {
std::map<std::string, int> ages;
// 요소 추가
ages["Alice"] = 30;
ages["Bob"] = 25;
// 요소 조회
std::cout << "Alice's age: " << ages["Alice"] << std::endl;
return 0;
}
이 예제에서는 이름을 키로 사용하여 각각의 나이를 값으로 저장하고 있다.
Map 컨테이너의 주요 기능
Map 컨테이너는 데이터를 조회, 추가, 삭제 등의 작업을 수행할 수 있는 다양한 멤버 함수와 기능을 제공한다.
요소 추가와 업데이트
ages["Charlie"] = 20; // 추가
ages["Alice"] = 32; // 업데이트
요소 삭제
ages.erase("Bob");
요소 조회
if (ages.find("Alice") != ages.end()) {
std::cout << "Alice's age: " << ages["Alice"] << std::endl;
}
요소 순회
for (auto& kv : ages) {
std::cout << kv.first << "'s age: " << kv.second << std::endl;
}
요약
Map 컨테이너는 키-값 쌍을 관리하는 데 유용한 C++ 컨테이너로, 특히 검색과 조회가 자주 필요한 경우에 유용하다. 또한 키를 기반으로 중복된 값을 허용하지 않기 때문에 유용하게 사용될 수 있다.