7.5 STL의 map 사용

이번에는 STL의 map 사용 방법을 알아보기로 합시다.

map은 key와 value를 쌍으로 구성하는 pair를 보관하는 구조입니다. key를 기준으로 자료를 보관하고 검색하며 실질적으로 보관할 자료를 value입니다. 이처럼 키와 값을 쌍으로 보관하는 자료구조를 사전 컬렉션이라고도 부릅니다. 만약 회원 관리 프로그램에서 회원의 id를 기준으로 map에 보관하면 다음처럼 string을 키로 하고 Member *를 value로 하는 pair를 보관합니다.

여기에서는 map을 사용하는 방법을 두 가지 방법으로 나누어 설명할게요. 첫 번째 방법은 insert, find, erase, iterator를 사용하는 방법이고 두 번째 방법은 인덱스 연산자를 사용하는 방법입니다.

map을 사용하는 방법을 설명하기 위한 프로그램은 두 방법 모두 회원 관리 프로그램으로 하겠습니다.

먼저 두 방법에 공통으로 사용할 회원과 프로토 타이핑을 합시다. 프로젝트를 생성한 후에 공통으로 사용할 파일(3.1.1 참고)을 추가하세요.

회원 클래스는 아이디와 이름을 멤버로 갖게 간단히 구현하기로 해요.

회원 클래스의 구체적 구현은 별다른 설명은 하지 않을게요.

회원 관리 프로그램의 프로토 타이핑도 같습니다. 여기에서는 map에 회원 보관, 삭제, 검색, 전체 보기를 제공할 거예요. 앞에서 작성했던 도서 관리 프로그램과 매우 유사합니다.

map을 사용하려면 map 파일을 포함하세요. 알고리즘도 필요합니다.

map과 pair를 사용할 거예요.

키를 회원 ID로 할 것이므로 ID 형식인 string을 key 형식으로 보관할 Member *를 값으로 타입 지정하세요.

App 클래스를 만드세요.

프로토 타이핑을 구현합시다.

진입점 main을 작성하세요. App 개체 생성한 후 사용자와 상호 작용을 담당하는 Run 메서드 호출한 후에 소멸하는 순서입니다.

현재까지 작성한 코드입니다.