다음을 통해 공유


map Class

저장 및 검색 하는 데이터 값 및 정렬 키를 모두 포함 하는 쌍 각 요소는 컬렉션에서 데이터를 사용 합니다.키의 값은 고유 하며 데이터를 자동으로 정렬 하는 데 사용 됩니다.

지도에 있는 요소의 값을 직접 변경할 수 있습니다.키 값은 상수 이므로 변경할 수 없습니다.대신 이전 요소와 연관 된 키 값을 삭제 하 고 새 요소에 대 한 새 키 값을 삽입 해야 합니다.

template <
   class Key, 
   class Type, 
   class Traits = less<Key>, 
   class Allocator=allocator<pair <const Key, Type> > 
>
class map

매개 변수

  • Key
    맵에 저장 키 데이터 형식입니다.

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

  • Traits
    제공 하는 함수 개체의 형식 지도에서 상대적인 순서를 결정 하는 정렬 키로 두 개의 요소 값을 비교할 수 있습니다.이 인수는 선택 사항입니다 및 이진 술 부 less<Key> 기본값입니다.

  • Allocator
    지도의 할당 및 할당 취소에 대 한 세부 정보를 캡슐화 하는 저장 된 할당 기 개체를 나타내는 형식입니다.This argument is optional and the default value is allocator<pair<constKey*,* Type> >.

설명

STL (표준 템플릿 라이브러리) 맵 클래스는 다음과 같습니다.

  • 효율적으로 연결 된 키 값을 기준으로 요소 값을 검색 하는 가변 크기의 컨테이너입니다.

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

  • 해당 요소의 지정 된 비교 함수에 따라 키 값에 의해 정렬 됩니다 때문에 정렬 합니다.

  • 고유 합니다.각 요소는 고유 키가 있어야 하기 때문입니다.

  • 쌍 결합형 컨테이너를 해당 요소 데이터 값은 해당 키 값을 구분 하기 때문입니다.

  • 템플릿 클래스를 제공 하는 기능 때문입니다 일반 및 요소 또는 키 형식에 관계 없이.요소에 대 한 데이터 형식을 사용 하 고 키 비교 함수 및 할당자와 함께 클래스 템플릿 매개 변수로 지정 됩니다.

맵 클래스에서 제공 하는 반복기는 양방향 반복기입니다 있지만 삽입 클래스 멤버 함수에 기능 요구 사항이 있는 양방향 반복기의 클래스에 의해 보장 하는 것 보다 적은 약한 입력된 반복기를 템플릿 매개 변수로 사용 하는 버전입니다.다른 반복기 개념으로 구체화의 기능에 관련이 있습니다.각 반복기 개념 자체 요구 사항 집합이 있으며 이러한 요구 사항에 따라 작업을 하는 알고리즘 제한 합니다.입력된 반복기는 일부 개체를 참조 하려면 역참조 될 수 있습니다 및 시퀀스에서 다음 반복기를 증가 시킬 수 있습니다.

컨테이너 유형 중에서 선택할 검색 유형에 따라 기본 및 응용 프로그램에 삽입 하는 데 필요한 하는 것이 좋습니다.결합형 컨테이너 조회, 삽입 및 제거 작업에 최적화 되어 있습니다.멤버 함수는 명시적으로 이러한 작업을 지 원하는 컨테이너의에서 요소 수의 밑에 비례 하는 평균 시간에 수행 합니다.요소를 삽입 하지 반복기를 무효화 하 고 요소 제거 제거 요소를 구체적으로 가리키는 이러한 반복기만 무효화.

응용 프로그램에서 키와 값을 연결 하는 조건을 충족 하는 경우 지도 결합형 컨테이너를 선택 하는 것이 좋습니다.이런이 종류의 구조에 대 한 모델은 정렬 된 목록입니다 연관 된 핵심 단어를 고유 하 게 나타나는 문자열 정의 제공 하는 값입니다.다음 단어 올바른 정의가 두 개 이상 있으므로 키가 고유 하지 않은 경우는 multimap 컨테이너 선택 됩니다.다음 단어 목록이 방금 저장 되는 경우 적합 한 컨테이너 집합이 됩니다.단어가 여러 개 허용할 경우 multiset 적절 한 수 있습니다.

지도 제어 형식의 저장 된 함수 개체를 호출 하 여 요소를 정렬 key_compare.이 저장 된 개체 비교 함수를 호출 하 여 액세스 하는 것은 key_comp 메서드.일반적으로 주어진된 임의의 두 요소 하나 보다 다른 인지 아니면 해당 하는 여부를 확인할 수 비교 됩니다.모든 요소를 비교할 때 아닌 해당 요소의 순서 있는 시퀀스 생성 됩니다.

[!참고]

비교 함수를 유도 엄격한 약한 표준 수학 점에서 주문 이진 조건부입니다.이진 술 부 f(x,y) 두 인수 개체에는 함수 개체입니다 x 및 y, 및 반환 값을 true 또는 false.이진 술 부 비 회귀, 반대칭 특성이 결합 된, 및 전이 있고 등가 전이 되 면 두 개체는 경우 순서는 엄격한 약한 순서 집합에 적용 됩니다 x 및 y 때 동일한 것으로 정의 된 모두 f(x,y) 및 f(y,x) 는 false.등가 강력한 조건 키 사이의 같음 바꾸면 순서 (모든 요소를 서로 관련 하 여 정렬 되는 의미에서) 총 되며 일치 하는 키를 서로 인식할 수 수 없게 됩니다.

Members

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

특정 크기의 또는 요소를 특정 값 또는 특정 목록 생성 allocator 기타 일부 맵의 복사본이 나.

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

allocator_type

형식에 대 한 정의 allocator 맵 개체에 대 한 클래스입니다.

const_iterator

읽을 수 있는 양방향 반복기에 대 한 형식 정의 const 맵의 요소를에서.

const_pointer

형식에 대 한 포인터에 대 한 정의 const 맵의 요소입니다.

const_reference

형식 정의에 대 한 const 맵의 읽기 및 수행 하는 저장 된 요소의 const 작업.

const_reverse_iterator

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

difference_type

반복기가 가리키는 요소 사이의 범위에서 지도 요소 수에 대 한 typedef 부호 있는 정수입니다.

반복기

읽거나 맵의 모든 요소를 수정 하는 양방향 반복기에 대 한 형식 정의입니다.

key_compare

Typedef는 함수 개체 맵에서 두 요소의 상대적 순서를 결정 하는 두 개의 정렬 키를 비교할 수 있습니다.

key_type

각 지도 요소에 저장 된 정렬 키에 대 한 형식 정의입니다.

mapped_type

각 지도 요소에 저장 된 데이터에 대 한 형식 정의입니다.

pointer

형식에 대 한 포인터에 대 한 정의 const 맵의 요소입니다.

reference

Typedef는 맵에 저장 된 요소를 참조 합니다.

reverse_iterator

읽거나 거꾸로 된 지도 요소를 수정할 수 있는 양방향 반복기에 대 한 형식 정의입니다.

size_type

부호 없는 정수 형식 정의의 지도 요소 수에 대 한

value_type

지도 요소에 저장 된 개체의 형식에 대 한 형식 정의입니다.

s44w4h2s.collapse_all(ko-kr,VS.110).gif메서드

map::at

지정 된 키 값을 가진 요소를 찾습니다.

begin

구조에서 첫 번째 요소를 가리키는 반복기를 반환 합니다.

map::cbegin

Const 구조에서 첫 번째 요소를 가리키는 반복기를 반환 합니다.

map::cend

Const 끝 지난 반복기를 반환합니다.

clear

맵의 모든 요소를 지웁니다.

count

키 매개 변수에서 지정 된 키와 일치 하는 맵에 요소 개수를 반환 합니다.

map::crbegin

상수 역방향 맵의 첫 번째 요소를 가리키는 반복기를 반환 합니다.

map::crend

마지막 요소 뒤에 거꾸로 된 지도 위치를 가리키는 const 반복기를 반환 합니다.

map::emplace

맵으로 위치에서 구성 요소를 삽입 합니다.

map::emplace_hint

원위치에 배치 되는 힌트와 지도 생성 하는 요소를 삽입 합니다.

empty

반환 true 맵 비어 있는 경우.

end

최종 이전 반복기를 반환합니다.

equal_range

한 쌍의 반복기를 반환합니다.첫 번째 쌍 포인트의 첫 번째 요소에 반복기는 map 지정 된 키 보다 큰 키.두 번째 쌍 포인트의 첫 번째 요소에 반복기는 map 키 키 보다 크거나 같은 경우에.

지우기

지도에서 지정 된 위치에서 요소 또는 요소 범위를 제거합니다.

find

요소는 지정 된 키의 키 값이 맵의 위치를 가리키는 반복기를 반환 합니다.

get_allocator

복사본을 반환 된 allocator 지도 생성 하는 데 사용 되는 개체입니다.

삽입

요소 또는 요소의 범위 지도에서 지정 된 위치에 삽입합니다.

key_comp

맵의 순서 키를 사용 하는 비교 개체의 복사본을 반환 합니다.

lower_bound

지정 된 키 보다 크거나 같은 키 값이 맵의 첫 번째 요소에 반복기를 반환 합니다.

max_size

맵의 최대 길이 반환합니다.

rbegin

반전 된 맵의 첫 번째 요소를 지점에 반복기를 반환합니다.

rend

반복기의 마지막 요소 뒤에 거꾸로 된 지도 위치를 해당 포인트를 반환합니다.

size

맵에서 요소 개수를 반환합니다.

스왑

두 맵의 요소를 교환합니다.

upper_bound

맵에서 지정 된 키 보다 큰 키 값을 가진 첫 번째 요소에 반복기를 반환 합니다.

value_comp

맵의 순서 대로 요소 값에 사용 되는 비교 개체의 복사본을 검색 합니다.

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

operator[]

지정 된 키 값을 사용 하 여 맵을에 요소를 삽입합니다.

map::operator=

지도 요소의 다른 맵의 복사본으로 대체합니다.

요구 사항

헤더: <map>

네임 스페이스: std

참고 항목

참조

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

표준 템플릿 라이브러리

기타 리소스

멤버 구조

<map> 멤버