2011-12-29 2 views
1

std::__unordered_map__cache_hash_code=true은 놀라운 런타임 성능 향상을 제공합니다. 그러나 std::unordered_map에는 사용할 수 없습니다. __cache_hash_code=true은 (는) 지원되지 않습니다.왜 __cache_hash_code는 std :: __ unordered_map에서만 사용할 수 있습니까?

+2

'std :: unordered_map'은 사용자 정의 해시 펑터를 지원합니다. 프로파일 링에서 캐싱이 바람직 함을 나타내면 사용자 정의 해시 펑터에서 해당 캐쉬를 구현할 수 있습니다. 그것은 완벽하게 이식 가능합니다. – MSalters

답변

2

이름에 이중 밑줄 (__)이있는 식별자는 구현에 의해 예약되므로 구현시 특정 코드가 나중에 동일하거나 다른 의미로 지원 될 수도 있고 지원되지 않을 수도 있습니다.

프로파일 링이 해시가 프로그램에서 중요한 병목임을 밝히지 않은 경우 표준 컨테이너를 사용하여 유지 관리 및 이식성을 향상시켜야합니다.

관련 문제