hash_map과 unordered_map의 차이?
-
22-07-2019 - |
문제
최근에 C ++에서 해시 맵의 구현이 unordered_map
.
내가 왜 그들이 사용하지 않았는지 바라 보았을 때 hash_map
, 나는 분명히 구현에 호환성 문제가 있음을 발견했다. hash_map
저것 unordered_map
해결합니다 (자세한 내용 여기).
그 위키 페이지는 더 많은 정보를 제공하지 않으므로 누군가가 몇 가지 문제를 알고 있는지 궁금합니다. hash_map
저것 unordered_map
해결합니다.
해결책
C ++ 표준 라이브러리에 정의 된 해시 테이블이 없기 때문에 표준 라이브러리의 다른 구현자는 종종 비표준 해시 테이블을 제공합니다. hash_map
. 이러한 구현은 표준에 따라 쓰여지지 않았기 때문에 모두 기능과 성능 보장에 미묘한 차이가있었습니다.
로 시작 C ++ 11 해시 테이블 구현이 C ++ 표준 라이브러리 표준에 추가되었습니다. 이 비표준 구현과의 충돌을 방지하고 가지고있는 개발자의 새로운 클래스의 실수로 사용하지 않도록 클래스의 대체 이름을 사용하기로 결정했습니다. hash_table
그들의 코드에서.
선택한 대체 이름은입니다 unordered_map
클래스의지도 인터페이스와 요소의 순서가없는 특성을 암시하면서 더 설명 적입니다.
제휴하지 않습니다 StackOverflow