다음을 통해 공유


hash_multimap (STL/CLR)

템플릿 클래스의 양방향 액세스 가변 길이 시퀀스의 요소를 제어 하는 개체를 설명 합니다.컨테이너를 사용 하 여 hash_multimap 해시 테이블로 시퀀스의 요소를 관리 하기 위해 저장 하 여 양방향 각 테이블 항목 연결 노드 목록과 각 노드를 하나의 요소를 저장 합니다.요소 시퀀스 및 되는 타는 곳에 이동 매핑된 값 정렬 키로 구성 됩니다.

아래 설명에서 GValue 와 동일 합니다.

Microsoft::VisualC::StlClr::GenericPair<GKey, GMapped>

다음은 각 문자에 대한 설명입니다.

GKey같은 Key 후자는 ref 형식입니다 하지 않으면 어떤 경우에 것입니다Key^

GMapped같은 Mapped 후자는 ref 형식입니다 하지 않으면 어떤 경우에 것입니다Mapped^

template<typename Key,
    typename Mapped>
    ref class hash_multimap
        :   public
        System::ICloneable,
        System::Collections::IEnumerable,
        System::Collections::ICollection,
        System::Collections::Generic::IEnumerable<GValue>,
        System::Collections::Generic::ICollection<GValue>,
        System::Collections::Generic::IList<GValue>,
        Microsoft::VisualC::StlClr::IHash<Gkey, GValue>
    { ..... };

매개 변수


  • 제어되는 시퀀스에 있는 요소의 키 구성 요소 형식입니다.

  • 매핑
    제어 되는 시퀀스에 있는 요소의 추가 구성 요소 유형을 지정 합니다.

Members

형식 정의

설명

hash_multimap::const_iterator (STL/CLR)

상수 반복기 제어 되는 시퀀스의 유형을 지정 합니다.

hash_multimap::const_reference (STL/CLR)

형식 요소에 대 한 상수 참조입니다.

hash_multimap::const_reverse_iterator (STL/CLR)

형식 제어 되는 시퀀스에 있는 상수 역방향 반복기입니다.

hash_multimap::difference_type (STL/CLR)

두 요소 사이의 거리 (서명된 가능) 유형을 지정 합니다.

hash_multimap::generic_container (STL/CLR)

컨테이너에 대 한 제네릭 인터페이스의 형식입니다.

hash_multimap::generic_iterator (STL/CLR)

반복기는 컨테이너에 대 한 제네릭 인터페이스의 형식입니다.

hash_multimap::generic_reverse_iterator (STL/CLR)

형식 컨테이너에 대 한 제네릭 인터페이스는 역방향 반복기입니다.

hash_multimap::generic_value (STL/CLR)

제네릭 인터페이스는 컨테이너에 대 한 요소 유형을 지정 합니다.

hash_multimap::hasher (STL/CLR)

해시 키에 대 한 대리자입니다.

hash_multimap::iterator (STL/CLR)

제어 되는 시퀀스에 대 한 반복기의 형식입니다.

hash_multimap::key_compare (STL/CLR)

두 키에 대 한 순서 지정 대리자입니다.

hash_multimap::key_type (STL/CLR)

정렬 키의 형식입니다.

hash_multimap::mapped_type (STL/CLR)

매핑된 각 키와 연관 된 값의 형식입니다.

hash_multimap::reference (STL/CLR)

형식 요소에 대 한 참조입니다.

hash_multimap::reverse_iterator (STL/CLR)

형식 제어 되는 시퀀스에 대해 하는 역방향 반복기입니다.

hash_multimap::size_type (STL/CLR)

두 요소 사이의 거리 (음수가 아님) 유형을 지정 합니다.

hash_multimap::value_compare (STL/CLR)

두 개의 요소 값에 대 한 순서 지정 대리자입니다.

hash_multimap::value_type (STL/CLR)

요소 유형을 지정 합니다.

멤버 함수

설명

hash_multimap::begin (STL/CLR)

제어되는 시퀀스의 시작을 지정합니다.

hash_multimap::bucket_count (STL/CLR)

버킷 수를 셉니다.

hash_multimap::clear (STL/CLR)

모든 요소를 제거합니다.

hash_multimap::count (STL/CLR)

지정 된 키와 일치 하는 요소를 계산 합니다.

hash_multimap::empty (STL/CLR)

요소가 없는지 여부 테스트를 제공 합니다.

hash_multimap::end (STL/CLR)

제어되는 시퀀스의 끝을 지정합니다.

hash_multimap::equal_range (STL/CLR)

지정 된 키와 일치 하는 범위를 찾습니다.

hash_multimap::erase (STL/CLR)

지정된 위치에 있는 요소를 제거합니다.

hash_multimap::find (STL/CLR)

지정된 키와 일치하는 요소를 찾습니다.

hash_multimap::hash_delegate (STL/CLR)

해시 키에 대 한 대리자를 복사합니다.

hash_multimap::hash_multimap (STL/CLR)

컨테이너 개체를 만듭니다.

hash_multimap::insert (STL/CLR)

요소를 추가합니다.

hash_multimap::key_comp (STL/CLR)

두 키에 대 한 순서 지정 대리자를 복사합니다.

hash_multimap::load_factor (STL/CLR)

버킷 당 평균 요소 수를 계산 합니다.

hash_multimap::lower_bound (STL/CLR)

검색 시작에 지정 된 키와 일치 하는 범위입니다.

hash_multimap::make_value (STL/CLR)

값 개체를 만듭니다.

hash_multimap::max_load_factor (STL/CLR)

버킷 당 최대 요소를 가져오거나 설정 합니다.

hash_multimap::rbegin (STL/CLR)

역방향 제어되는 시퀀스의 시작을 지정합니다.

hash_multimap::rehash (STL/CLR)

해시 테이블을 다시 빌드합니다.

hash_multimap::rend (STL/CLR)

역방향 제어되는 시퀀스의 끝을 지정합니다.

hash_multimap::size (STL/CLR)

요소의 수를 셉니다.

hash_multimap::swap (STL/CLR)

두 컨테이너의 내용을 바꿉니다.

hash_multimap::to_array (STL/CLR)

제어 되는 시퀀스를 새 배열에 복사합니다.

hash_multimap::upper_bound (STL/CLR)

지정 된 키와 일치 하는 범위 끝 찾습니다.

hash_multimap::value_comp (STL/CLR)

두 개의 요소 값에 대 한 순서 지정 대리자를 복사합니다.

Operator

설명

hash_multimap::operator= (STL/CLR)

제어 되는 시퀀스를 대체합니다.

인터페이스

Interface

설명

ICloneable

개체를 복제 합니다.

IEnumerable

요소를 시퀀스입니다.

ICollection

그룹의 요소를 유지 합니다.

IEnumerable<T>

형식화 된 요소를 시퀀스입니다.

ICollection<T>

형식화 된 요소 그룹을 유지 합니다.

< 키, 값 > IHash

제네릭 컨테이너를 유지 합니다.

설명

개체를 할당 하 고 양방향 연결된 목록에 개별 노드로 제어 되는 시퀀스에 대 한 저장소를 해제 합니다.액세스 속도 향상 시키려면 또한 개체 시퀀스로의 하위 목록, 목록 전체를 효과적으로 관리 하는 가변 길이 배열 목록 (해시 테이블)에 대 한 포인터의 유지 또는 buckets.절대로 한 노드의 콘텐츠를 다른 컴퓨터로 복사 하 여 노드 간에 연결을 변경 하 여 순서 대로 유지 하는 통에 요소를 삽입 합니다.즉 삽입 하 고 나머지 요소를 방해 하지 않고 자유롭게 요소를 제거할 수 있습니다.

개체 제어에 저장 된 대리자 형식의 개체를 호출 하 여 각 통 주문 hash_set::key_compare (STL/CLR).Hash_set를 만들 때 저장 된 대리자 개체를 지정할 수 있습니다. 대리자 개체를 지정 하지 않으면 기본 비교 됩니다 operator<=(key_type, key_type).

멤버 함수를 호출 하 여 저장 된 대리자 개체를 액세스할 수 있습니다. hash_set::key_comp (STL/CLR)().대리자 개체 간의 키 형식 해당 하는 순서를 정의 해야 hash_set::key_type (STL/CLR).즉, 두 키에 대 한 X 및 Y:

key_comp()(X, Y)결과 같은 부울 반환 값을 호출할 때마다입니다.

경우 key_comp()(X, Y) && key_comp()(Y, X) 다음 true 인 X 및 Y 해당 하는 주문에 있다고 합니다.

처럼 동작 하는 모든 순서 지정 규칙 operator<=(key_type, key_type), operator>=(key_type, key_type) 또는 operator==(key_type, key_type) eqivalent 순서를 정의 합니다.

Note 요소 동일한 정렬 키가와 같은 정수 값은 해시 버킷 내 인접 됩니다 컨테이너만 보장 합니다.템플릿 클래스와는 달리 hash_map (STL/CLR), 템플릿 클래스의 개체를 hash_multimap 모든 요소에 대 한 키가 고유한 지 필요 하지 않습니다.(두 개 이상의 키 해당 주문 가질 수 있습니다.)

개체는 통 형식의 저장 된 대리자 개체를 호출 하 여 지정 된 정렬 키를 포함 해야 결정 hash_set::hasher (STL/CLR).멤버 함수를 호출 하 여이 저장 된 개체에 액세스 hash_set::hash_delegate (STL/CLR)() 키 값에 종속 되는 정수 값을 얻을 수 있습니다.Hash_set를 만들 때 저장 된 대리자 개체를 지정할 수 있습니다. 대리자 개체를 지정 하는 경우 기본 함수는 System::Object::hash_value(key_type).즉, 모든 키에 대 한 X 및 Y:

hash_delegate()(X)모든 호출에서 동일한 정수 결과 반환합니다.

경우 X 및 Y 해당 하는 경우 다음 순서에 있는 hash_delegate()(X) 와 같은 정수 결과 반환 해야 hash_delegate()(Y).

각 요소는 별도 키와 매핑된 값을 포함합니다.시퀀스에서 조회, 삽입 및 제거 하는 최상의 사례에 독립적으로 (일정 시간)-시퀀스의 요소 개수입니다 적어도 작업 수가 임의의 요소를 허용 하는 방식으로 표현 됩니다.게다가 없음 반복기 요소 삽입을 무효화 하 고 요소 제거에서 제거 된 요소를 가리키는 반복기가 무효화 됩니다.

그러나 하지 않도록 해시 값을 균일 하 게 분산 되어 있는 경우 해시 테이블 만들어야 수 있습니다.-항상 동일한 값을 반환 하는 해시 함수에 대 한 최악의 경우 조회, 삽입 및 제거 비례 (선형 시간) 시퀀스의 요소 개수입니다.컨테이너는 적절 한 해시 함수를 평균 버킷 크기를 선택 하려면 노력 하 고 해시 테이블 크기 (총 버킷), 있지만 이러한 옵션 중 일부 또는 전부를 재정의할 수 있습니다.예를 들어, 함수 참조 hash_set::max_load_factor (STL/CLR)hash_set::rehash (STL/CLR).

Hash_multimap는 인접 요소 제어 되는 시퀀스의 요소를 지정 하는 반복기를 지정 된 단계 수를 의미 하는 양방향 반복기를 지원 합니다.특별 한 헤드 노드를 반환 하는 반복기 해당 hash_multimap::end (STL/CLR)().있을 경우 제어 되는 시퀀스의 마지막 요소에 도달 하기 위해이 반복기를 감소 시킬 수 있습니다.헤드 노드를 도달 하는 hash_multimap 반복기를 증가 시킬 수 있습니다 및 다음 같은지 비교 됩니다 end().하지만 반환 하는 반복기를 역 참조할 수 없습니다 end().

직접 해당 위치를 나타내는 숫자를 지정 하는 hash_multimap 요소를 참조할 수 있습니다-필요로 하는 임의 액세스 반복기입니다.

Hash_multimap 반복기의 관련된 컨테이너에 대 한 핸들을 저장 하는 해당 관련된 hash_multimap 노드를 핸들을 저장 합니다.가 연결 된 컨테이너 개체만 반복기를 사용할 수 있습니다.관련된 hash_multimap 노드는 일부 hash_multimap와 관련 된 게 hash_multimap 반복기가 유효 합니다.또한 유효한 반복기는 dereferencable입니다-액세스 하거나 것 같지 않은 게 그 지정-요소 값을 변경할 사용 end().

지우거 나 요소를 제거 합니다. 저장 된 값에 대 한 소멸자를 호출 합니다.컨테이너 파괴 모든 요소를 지웁니다.따라서 요소 형식이 ref 클래스 컨테이너 컨테이너 요소 outlive 것을 보장 합니다.그러나 컨테이너 핸들 하지 않습니다 not 요소를 파괴 하십시오.

요구 사항

헤더: < cliext/hash_map >

네임 스페이스: cliext

참고 항목

참조

hash_map (STL/CLR)

hash_multiset (STL/CLR)

hash_set (STL/CLR)

map (STL/CLR)

multimap (STL/CLR)

multiset (STL/CLR)

set (STL/CLR)

기타 리소스

STL/CLR 라이브러리 참조