다음을 통해 공유


hash_compare Class

모든 해시 결합형 컨테이너에서 사용할 수 있는 개체를 설명 하는 템플릿 클래스-hash_map, hash_multimap, hash_set, 또는 hash_multiset-기본적으로 성분 주문 및 여기에 포함 된 요소를 해시 하는 매개 변수 개체입니다.

template<class Key, class Traits = less<Key> >
   class hash_compare
   {
   Traits comp;
public:
   const size_t bucket_size = 4;
   const size_t min_buckets = 8;
   hash_compare( );
   hash_compare( Traits pred );
   size_t operator( )( const Key& _Key ) const;
   bool operator( )( 
      const Key& _Key1,
      const Key& _Key2
   ) const;
   };

설명

각 해시 결합형 컨테이너 형식의 해시 특성 개체 저장 성분 (템플릿 매개 변수)입니다.클래스 특수화를 선택적으로 특정 기능 및 개체를 재정의 하는 hash_compare에서 파생 될 수 있습니다 또는 특정 최소 요구 사항을 충족 하는 경우이 클래스의 개인 버전을 제공할 수 있습니다.구체적으로 개체 hash_comp 형식에 대 한 < 키, 성분 > hash_compare, 위의 컨테이너에서 다음 동작이 필요 합니다.

  • 모든 값에 대 한 _Key 형식 를 호출 hash_comp(_Key) 형식의 값의 분포를 얻을 수 해시 함수로 사용 size_t.Hash_compare에서 제공 되는 함수를 반환 합니다. _Key.

  • 모든 값에 대 한 _Key1 형식 앞 _Key2 시퀀스에서와 같은 가진 해시 값 (해시 함수에 의해 반환 된 값) hash_comp(_Key2, _Key1) false입니다.형식의 값에 순서를 지정 하는 전체 함수를 부과 해야 .Hash_compare에서 제공 되는 함수를 반환 합니다. comp(_Key2, _Key1), 는 comp 저장 된 개체의 형식입니다 성분 개체 hash_comp를 구성할 때 지정할 수 있습니다.기본 성분 매개 변수 형식 작은 <Key>, 정렬 키를 절대로 감소 되는 값입니다.

  • 정수 계열 상수 bucket_size 요소 "컨테이너 않습니다 초과 하려고 합니다 통" (해시 테이블 항목) 당 평균 수를 지정 합니다.0 보다 커야 합니다.Hash_compare에서 제공 하는 값은 4입니다.

  • 정수 계열 상수 min_buckets 버킷은 해시 테이블에서 유지 하기 위해 최소 개수를 지정 합니다.이 두 하 고 0 보다 큰 거듭제곱 이어야 합니다.Hash_compare에서 제공 하는 값은 8입니다.

Visual C++에서.Net의 멤버는 <hash_map><hash_set> 헤더 파일 더 이상 std 네임 스페이스에 있지만 오히려 stdext 네임 스페이스로 이동 되었습니다.자세한 내용은 stdext 네임스페이스를 참조하십시오.

예제

예제를 참조 하십시오 hash_map::hash_map, hash_multimap::hash_multimap, hash_set::hash_set, 및 hash_multiset::hash_multiset, 선언 하 고 hash_compare를 사용 하는 방법의 예입니다.

요구 사항

헤더: <hash_map>

네임 스페이스: stdext

참고 항목

참조

표준 C++ 라이브러리에서 스레드로부터의 안전성

표준 템플릿 라이브러리

기타 리소스

<hash_map> 멤버

<hash_set> 멤버