unordered_map Class
템플릿 클래스 가변 길이 형식의 요소 시퀀스 제어 하는 개체에 설명 합니다. std::pair<const Key, Ty>.시퀀스 시퀀스 buckets 라고 하위 시퀀스 정렬 된 집합으로 분할 하는 해시 함수에서 주문한 약하게입니다.각 버킷 내 비교 함수 요소 쌍 동등한 주문 있는지를 확인 합니다.각 요소는 두 개체, 정렬 키 값 저장 합니다.시퀀스를 나타내는 조회, 삽입 및 제거 임의의 요소 (일정 한 시간) 시퀀스의 요소 수의 독립이 될 수 있는 작업의 번호를 허용 하는 방식으로 적어도 모든 버킷의 있을 때의 길이 거의 같습니다.모든 요소를 한 통에 되 면 최악의 경우에 작업 (선형 시간) 시퀀스의 요소 수 비례 합니다.게다가 요소 삽입 없음 반복기를 무효화 하 고 요소 제거에서 제거 된 요소를 가리키는 반복기가 무효화 됩니다.
template<class Key,
class Ty,
class Hash = std::hash<Key>,
class Pred = std::equal_to<Key>,
class Alloc = std::allocator<std::pair<const Key, Ty> > >
class unordered_map;
매개 변수
Parameter |
설명 |
Key |
키 유형입니다. |
Ty |
매핑된 형식입니다. |
Hash |
해시 함수 개체 형식입니다. |
Pred |
같음 비교 함수 개체 형식입니다. |
Alloc |
할당자 클래스입니다. |
Members
형식 정의 |
설명 |
저장소 관리는 할당자의 형식입니다. |
|
형식 제어 되는 시퀀스에 대 한 상수 반복기입니다. |
|
형식 제어 되는 시퀀스에 대 한 상수 통 반복기입니다. |
|
형식 요소에 대 한 상수 포인터입니다. |
|
형식 요소에 대 한 상수 참조입니다. |
|
부호 있는 두 요소 사이의 거리의 형식입니다. |
|
해시 함수 유형을 지정 합니다. |
|
반복기에 대 한 제어 되는 시퀀스의 형식입니다. |
|
비교 함수를 입력 합니다. |
|
정렬 키의 형식입니다. |
|
형식 제어 되는 시퀀스에 대 한 버킷 반복기입니다. |
|
매핑된 각 키와 연관 된 값의 형식입니다. |
|
형식 요소에 대 한 포인터입니다. |
|
형식 요소에 대 한 참조입니다. |
|
형식에서 두 요소 사이 서명 되지 않은 거리입니다. |
|
요소의 형식입니다. |
멤버 함수 |
설명 |
지정 된 키를 가진 요소를 찾습니다. |
|
제어되는 시퀀스의 시작을 지정합니다. |
|
통 키 값을 가져옵니다. |
|
버킷 수를를 가져옵니다. |
|
버킷 크기를 가져옵니다. |
|
제어되는 시퀀스의 시작을 지정합니다. |
|
제어되는 시퀀스의 끝을 지정합니다. |
|
모든 요소를 제거합니다. |
|
지정 된 키와 일치 하는 요소의 수를 찾습니다. |
|
위치에서 구성 요소를 추가 합니다. |
|
힌트를 현재 위치에서 구성 요소를 추가 합니다. |
|
테스트 요소 인지 여부를 표시 합니다. |
|
제어되는 시퀀스의 끝을 지정합니다. |
|
지정 된 키와 일치 하는 범위를 찾습니다. |
|
지정된 위치에 있는 요소를 제거합니다. |
|
지정된 키와 일치하는 요소를 찾습니다. |
|
저장 된 할당 자가 개체를 가져옵니다. |
|
저장 된 해시 함수 개체를 가져옵니다. |
|
요소를 추가합니다. |
|
저장 된 비교 함수가 개체를 가져옵니다. |
|
버킷 당 평균 요소 수를 계산 합니다. |
|
버킷 수를 가져옵니다. |
|
통 당 최대 요소를 가져오거나 설정 합니다. |
|
제어 되는 시퀀스의 최대 크기를 가져옵니다. |
|
해시 테이블을 다시 빌드합니다. |
|
요소의 수를 셉니다. |
|
두 컨테이너의 내용을 바꿉니다. |
|
컨테이너 개체를 만듭니다. |
Operator |
설명 |
찾거나 지정 된 키와 요소를 삽입 합니다. |
|
해시 테이블을 복사합니다. |
설명
시퀀스 제어 저장 된 개체가 두 종류의 비교 함수 개체를 호출 하 여 개체의 순서를 unordered_map::key_equal 해시 함수 개체 형식 및 unordered_map::hasher.멤버 함수를 호출 하 여 첫 번째 저장 된 개체에 액세스 unordered_map::key_eq(). 멤버 함수를 호출 하 여 두 번째 저장 된 개체에 액세스 하 고 unordered_map::hash_function().모든 값에 대 한 특히, X 및 Y 형식 Key를 호출 key_eq()(X, Y) 해당 하는 순서를 지정 합니다; 두 인수 값만 있는 경우 true를 반환 호출 hash_function()(keyval) 형식의 값의 분포를 얻을 수 size_t.템플릿 클래스와는 달리 unordered_multimap Class, 템플릿 클래스의 개체를 unordered_map 하면 됩니다 key_eq()(X, Y) 항상 제어 되는 시퀀스의 두 요소에 대해 false입니다.(키가 고유한 지.)
개체에는 최대 요소 통 당 평균 수 원하는 지정 된 최대 부하 비율을 저장 합니다.요소를 삽입 하면 unordered_map::load_factor() 최대 부하 비율을 초과 하는 컨테이너 버킷 수를 증가 하 고 필요에 따라 해시 테이블을 다시 작성 합니다.
제어 되는 시퀀스에 있는 요소의 실제 순서 해시 함수, 비교 함수, 삽입, 최대 부하 비율을 현재 버킷 수에 따라 다릅니다.일반적 제어 되는 시퀀스의 요소 순서를 예측할 수 없습니다.그러나 항상,, 해당 하는 정렬 된 요소의 하위 집합을 제어 되는 시퀀스에 인접 한 있는지 보장할 수 있습니다.
개체를 할당 하 고 해제 한 종류의 저장된 할당 자가 개체를 통해 제어 시퀀스에 대 한 저장소 unordered_map::allocator_type.할당 기 개체 템플릿 클래스의 개체를 같은 외부 인터페이스가 있어야 합니다 allocator.Note 컨테이너 개체에 할당 될 때 저장 된 할당 기 개체 복사 되지 않습니다.
요구 사항
헤더: <unordered_map>
네임 스페이스: 국방 표준