다음을 통해 공유


hash_multiset Class

[!참고]

이 API는 사용되지 않습니다.대신 unordered_multiset Class.

컨테이너 클래스 hash_multiset는 표준 템플릿 라이브러리의 확장 이며 저장 및 데이터 컬렉션에 포함 된 요소의 값을 키 값으로 역할 및 고유할 필요는 없습니다의 빠른 검색에 사용 됩니다.

template <
   class Key, 
   class Traits=hash_compare<Key, less<Key> >, 
   class Allocator=allocator<Key> 
>
class hash_multiset

매개 변수


  • Hash_multiset에 저장 될 요소의 데이터 형식입니다.

  • Traits
    두 개의 함수 개체를 포함 하는 형식 클래스 하나 비교 즉 이진 조건부 상대적인 순서와 키 값의 요소를 부호 없는 정수 형식에 매핑하는 진 술 해시 함수를 결정 하는 정렬 키로 두 개의 요소 값을 비교 하려면 size_t.이 인수는 선택 사항입니다 및 hash_compare*< 키를* 보다*<Key> >* 기본값은입니다.

  • Allocator
    Hash_multiset의 할당 및 할당 취소에 대 한 세부 정보를 캡슐화 하는 저장 된 할당 기 개체를 나타내는 형식입니다.이 인수는 선택적 이며 기본값은 할당자*<Key>.*

설명

Hash_multiset은 다음과 같습니다.

  • 요소 값의 효율적인 검색을 지 원하는 가변 크기 컨테이너에 연결 된 키 값에 기반 하는 결합형 컨테이너입니다.또한 해당 요소 값을 키 값 이기 때문에 단순 결합형 컨테이너입니다.

  • 해당 요소에 액세스 하는 양방향 반복기를 제공 하기 때문에 되돌릴 수 있습니다.

  • 버킷으로 해시 함수가 요소의 키 값에 적용 값을 기준으로 해당 요소의 그룹화 되기 때문에 해시.

  • 각 해당 요소의 고유 키가 있어야 점에서 고유 합니다.Hash_multiset 단순 결합형 컨테이너 이므로 해당 요소도 문제의 소지가 있습니다.

  • 이 기능을 제공 하기 때문에 템플릿 클래스 제네릭 독립적 요소 또는 키를 포함 하는 데이터를 특정 형식으로 되어 있습니다.요소 및 키를 사용 하는 데이터 형식 대신 비교 함수 및 할당자 클래스 템플릿 매개 변수로 지정 되 고.

정렬을 통해 해싱의 가장 큰 장점은 향상 된 효율성 있습니다: 삽입, 삭제, 수행 하 고 일정 한 평균 시간 시간 비교 정렬 기법에 대 한 컨테이너의 요소 수의 밑에 비례 찾습니다 성공적인 해시입니다.요소 집합에서의 값을 직접 변경할 수 있습니다.대신, 이전 값을 삭제 하 고 새 값을 가진 요소를 삽입 해야 합니다.

컨테이너 유형 중에서 선택할 검색 유형을 일반적 따라야 하 고 삽입 하는 응용 프로그램에 필요한.해시 된 결합형 컨테이너 조회, 삽입 및 제거 작업에 최적화 되어 있습니다.명시적으로 이러한 작업을 지원 하는 멤버 함수가 상수 평균적이 고 컨테이너의에서 요소 수에 의존 하지 않는 시간에 수행 하 여 잘된 해시 함수를 함께 사용 하면 효율적입니다.잘 디자인 된 해시 함수 해시 된 값의 균일 한 분포를 생성 및 충돌, 충돌 고유 키 값이 동일한 해시 된 값에 매핑되는 경우에 발생할 수 있다고 수 최소화.최악의 경우를 최악의 가능한 해시 함수로 작업 (선형 시간) 시퀀스의 요소 수 비례합니다.

Hash_multiset는 결합형 컨테이너는 조건에 해당 키 값을 연결 하면 원하는 응용 프로그램에 의해 충족 되어야 합니다.요소는 hash_multiset의 여러 수 고 키는 고유 하므로 자신의 정렬 키로 사용 될 수 있습니다.이런이 종류의 구조에 대 한 모델에서 단어를 두 번 이상 발생할 수 있습니다 예를 들어 단어의 순서가 지정 된 목록입니다.적절 한 컨테이너 구조는 hash_set 좋았을 것 다음 여러 개 단어, 허용 된 있었습니다.고유 정의 고유 키워드 목록에 값으로 연결 된 경우에 hash_map는이 데이터를 포함 하는 적절 한 구조 됩니다.대신 정의 고유 하지 않은 경우는 hash_multimap는 컨테이너의 선택 됩니다.

컨트롤 형식에 저장 된 해시 traits 객체를 호출 하 여 시퀀스의 hash_multiset 주문 value_compare.이 저장 된 개체의 멤버 함수를 호출 하 여 액세스할 수 있습니다 key_comp.함수 개체 클래스의 개체와 똑같이 동작 해야 hash_compare*< 키를* 보다*<Key> >.* 특히 모든 값에 대 한 형식의 , 전화 성분() 형식의 값의 분포를 얻을 size_t.

일반적으로 요소를 단지 미만 동급이 순서를 설정할 필요가: 임의의 두 요소가 지정 되도록, (둘 다 보다는 다른와 같은 의미)에 해당 하는 나 보다 다른 인지 확인할 수 있습니다.이 순서는 nonequivalent 요소 사이 발생 합니다.더 기술적인 메모에 비교 함수 유도 엄격한 약한 표준 수학 점에서 주문 이진 조건부입니다.이진 술 부 f(x,y) 인수 개체를 두 개 가진 함수 개체는 x 및 y 및 반환 값이 true 또는 false.이진 조건부 비 회귀, 반대칭 특성이 결합 된, 및 전이 되 고 등가 전이 되 면 두 개체 위치 경우 순서가 엄격 하 게 약한 순서는 hash_multiset에서 부과 되 x 및 y 때 동일한 것으로 정의 된 모두 f(x,y) 및 f(y,x) false입니다.강력한 조건 키 사이의 같음 동등성을 대신 하면 다음 순서 (모든 요소를 서로 기준으로 정렬 됩니다 의미)에서 총 되며 일치 하는 키를 서로 모아져 수 없게 됩니다.

제어 되는 시퀀스에 있는 요소의 실제 순서는 해시 함수, 정렬 함수 및 컨테이너 개체에 저장 된 해시 테이블의 현재 크기에 따라 다릅니다.일반적 제어 되는 시퀀스의 요소 순서를 예측할 수 있도록 해시 테이블의 현재 크기를 확인할 수 없습니다.요소 삽입 없음 반복기를 무효화 하 고 요소 제거 제거 요소를 구체적으로 가리키는 것만 이러한 반복기를 무효화 합니다.

반복기는 hash_multiset 클래스에서 제공 되지만 클래스 멤버 함수는 양방향 반복기입니다 삽입hash_multiset 버전이 해당 기능 요구 사항은 보다 양방향 반복기 클래스에 의해 보장 된 최소한의 더 약한 입력된 반복기를 템플릿 매개 변수로 사용 합니다.다른 반복기 개념 구체화가 해당 기능에 관련 된 제품군을 형성 합니다.자체 요구 사항, hash_multiset 각 반복기 개념이 고 해당 반복기의 형식에서 제공 하는 요구 사항에 자신의 가정을 사용 하 여 작업 하는 알고리즘 제한 해야 합니다.일부 개체를 참조 하는 입력된 반복기를 역참조 될 수 있습니다 및 시퀀스에서 다음 반복기를 증가 될 수 있음을 가정할 수 있습니다.최소한의 hash_multiset 기능, 이지만 충분히 의미 있게 반복기 범위에 대 한 말씀입니다 [_First, _Last) 클래스 멤버 함수의 컨텍스트에서.

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

wh3627k8.collapse_all(ko-kr,VS.110).gif생성자

hash_multiset

생성 된 hash_multiset 즉 빈 즉 모든 복사본 또는 일부 다른 부분이 hash_multiset.

wh3627k8.collapse_all(ko-kr,VS.110).gif형식 정의

allocator_type

나타내는 형식에서 allocator 클래스의 hash_multiset 개체입니다.

const_iterator

읽을 수 있는 양방향 반복기를 제공 하는 형식에 const 요소에 있는 hash_multiset.

const_pointer

에 대 한 포인터를 제공 하는 형식에 const 요소에 있는 hash_multiset.

const_reference

참조를 제공 하는 형식에 const 요소에 저장 한 hash_multiset 읽기 및 수행 const 작업.

const_reverse_iterator

모든 수 양방향 반복기를 제공 하는 형식의 읽을 const 요소에 있는 hash_multiset.

difference_type

내 같은 요소를 해결 하는 두 반복기 사이의 차이 제공 하는 부호 있는 정수 형식 hash_multiset.

반복기

양방향 반복기를 제공 하는 형식을 읽거나 모든 요소를 수정할 수 있는 hash_multiset.

key_compare

두 요소의 상대적 순서를 결정 하는 두 정렬 키를 비교할 수 있는 함수 개체를 제공 하는 형식에서 hash_multiset.

key_type

한 요소로 저장 된 개체를 설명 하는 형식에 hash_set 용량으로 정렬 키에.

pointer

요소에 대 한 포인터를 제공 하는 형식에 hash_multiset.

reference

에 저장 된 요소에 대 한 참조를 제공 하는 형식에 hash_multiset.

reverse_iterator

양방향 반복기를 제공 하는 형식을 읽거나 수정할 요소를 역순으로 hash_multiset.

size_type

요소의 수를 나타내는 부호 없는 정수 형식에 hash_multiset.

value_compare

두 개의 함수 개체를 이진 조건부의 두 요소 값을 비교할 수 있습니다 클래스 비교를 제공 하는 형식에 hash_multiset 자신의 상대를 확인 합니다 순서 및 단항 요소를 해시 조건자입니다.

value_type

한 요소로 저장 된 개체를 설명 하는 형식에 hash_multiset 의 용량 값으로.

wh3627k8.collapse_all(ko-kr,VS.110).gif멤버 함수

begin

주소를 첫 번째 요소에 반복기를 반환 된 hash_multiset.

hash_multiset::cbegin

반환 주소에서 첫 번째 요소는 const 반복기는 hash_multiset.

hash_multiset::cend

반환 주소에 있는 마지막 요소 다음에 나오는 위치는 const 반복기는 hash_multiset.

clear

모든 요소를 삭제 한 hash_multiset.

count

요소 개수를 반환 된 hash_multiset 키를 가진 매개 변수에 지정 된 키와 일치 하

hash_multiset::crbegin

첫 번째 요소는 역순된 주소는 const 반복기를 반환 hash_multiset.

hash_multiset::crend

주소는 반전된의 마지막 요소 다음에 나오는 위치는 const 반복기를 반환 합니다. hash_multiset.

hash_multiset::emplace

제자리에서 구성 요소를 삽입 한 hash_multiset.

hash_multiset::emplace_hint

제자리에서 구성 요소를 삽입 한 hash_multiset, 배치 힌트를.

empty

경우 테스트 하는 hash_multiset 비어 있습니다.

end

반복기를 마지막 요소 다음에 나오는 위치 주소 반환 된 hash_multiset.

equal_range

반복기 쌍입니다 각각의 첫 번째 요소를 반환은 hash_multiset 의 첫 번째 요소 및 지정 된 키 보다 큰 키의 hash_multiset 키 키 보다 크거나 같은 경우에.

지우기

요소나 요소에서 범위를 제거는 hash_multiset 지정 된 위치에서 지정 된 키와 일치 하는 요소를 제거 합니다.

find

요소 위치를 가리키는 반복기를 반환 된 hash_multiset 는 지정 된 키에 해당 하는 키가.

get_allocator

복사본을 반환의 allocator 개체를 만드는 데 사용 되는 hash_multiset.

삽입

요소 또는 요소에 범위를 삽입 한 hash_multiset.

key_comp

순서 키를 사용 하 여 비교 개체의 복사본을 검색 한 hash_multiset.

lower_bound

첫 번째 요소에 반복기를 반환 된 hash_multiset 키가 지정 된 키 보다 크거나 같은 경우에.

max_size

최대 길이를 반환 된 hash_multiset.

rbegin

첫 번째 요소는 역방향된 반복기를 반환 합니다. hash_multiset.

rend

반전된은 마지막 요소 다음에 나오는 위치를 설명 하는 반복기를 반환 hash_multiset.

size

요소 수가 반환 된 hash_multiset.

스왑

두 요소가 교환 hash_multisets.

upper_bound

첫 번째 요소에 반복기를 반환 된 hash_multiset 키가 지정 된 키 보다 크거나 같은 경우에.

value_comp

해시와 키 값의 요소를 주문 하는 데 해시 traits 객체의 복사본을 검색 한 hash_multiset.

wh3627k8.collapse_all(ko-kr,VS.110).gif연산자

hash_multiset::operator=

요소를 대체는 hash_multiset 의 다른 사본을 가진 hash_multiset.

요구 사항

헤더: <hash_set>

네임 스페이스: stdext

참고 항목

참조

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

표준 템플릿 라이브러리

기타 리소스

<hash_set> 멤버

hash_multiset 멤버