벡터 맵 또는 세트 맵을 만들 수있는 이유는 무엇입니까? 나를 위해 단지 차이점은 다음과 같습니다벡터의 맵에 비해 멀티 맵의 장점은 무엇입니까?
- 우리가 단순히
[]
연산자를 사용하여 요소의 벡터가 핵심 요소를 얻기과 벡터 맵과 multimap에equal_range
를 사용하여. - 요소를 추가하기위한 다중 맵에서
multimap.insert(make_pair(key,value))
을 사용하고 벡터 맵에서map_of_vectors[key].push_back(value)
을 사용합니다.
왜 멀티 맵을 사용해야합니까? 필자는 키의 모든 값을 얻으려면 두 개의 반복기를 사용하는 것이 좋습니다.
이 질문은 vector와 unordered_multimap의 unordered_map에도 적용됩니다.
필자는'multimap'의 목적을 결코 이해하지 못했습니다./ –
질문에 조금 늦었지만 멀티 맵은 여분의 포인터 때문에 벡터의 맵보다 훨씬 많은 메모리를 소비합니다.내가 사용하는 유일한 이유는 각 요소의 키를 유지하고자하는 경우이다. (푸시 백을하면 안된다.) – Jcao02
다른 값의 중복 키를 추적하고 싶을뿐 아니라, 또한 순간 알림에서 키/값 쌍을 삭제하려고합니다. 벡터의지도는 적합하지 않으며 목록의지도를 사용할 수는 있지만 멀티 맵을 사용하는 것이 더 편리합니다. – richizy