2012-06-24 3 views
2

std :: map과 동일한 기능을하지만 대체로 내용을 정렬하지 않는 대체 컨테이너가 있습니까? std :: map은 "정렬 된"컨테이너입니다.std :: map과 똑같은 컨테이너가 있지만 자동으로 정렬되지 않는 컨테이너가 있습니까?

나는 std :: map bar에 물건을 추가 할 때 문제가있다; 문자열 목록이 알파벳순으로 자동 정렬됩니다.

내 프로그램의 다른 모든 항목이 정상적으로 작동합니다.

내가 std :: map과 똑같은 기능을하지만 주문하지 않은 컨테이너가 있다면 궁금하다. 그래서 검색을하고 std :: map을 ??? :로 바꿀 수있다.

뭐니 뭐니? 사전에

덕분에 --Jynks

+1

그래서 항목을 넣은 순서대로 항목을 반복하고 싶습니까? – Matthew

+0

맞습니다. – aJynks

답변

2

C++ 11로 시작 사용할 수있는 std::unordered_map 용기가있다. 아직 완전히 C++ 11과 호환되지 않는 많은 컴파일러가이를 지원합니다. 이 컨테이너는 항목을 사전 순으로 정렬하지 않지만 연관 컨테이너이므로 항목의 삽입 (또는 다른 순서)을 유지할 필요가 없습니다.

컨테이너의 항목 순서를 유지하려는 경우 도 연관 컨테이너 (예 :지도)로 작동하므로 링크 된 목록과 정렬되지 않은 조합으로 컨테이너를 만들 수 있습니다 지도, 자바의 LinkedHashMap와 유사합니다.

관련 문제