다음을 통해 공유


<map> 함수

swap (map)

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

template <class key, class T, class _Pr, class _Alloc>
void swap(
    map<Key, Traits, Compare, Alloctor>& left,
    map<Key, Traits, Compare, Alloctor>& right);

매개 변수

right
교환할 요소를 제공하는 맵 또는 요소가 왼쪽 맵의 요소와 교환될 지도입니다.

left
요소가 지도 오른쪽의 요소와 교환될 지도입니다.

설명

템플릿 함수는 멤버 함수 left를 실행하기 위해 컨테이너 클래스 맵에 특수화된 알고리즘입니다.swap( right). 이 함수는 컴파일러에서 지정하는 함수 템플릿의 부분 순서 인스턴스입니다. 함수를 호출할 때 템플릿이 고유하게 일치하지 않는 방식으로 템플릿 함수가 오버로드되면 컴파일러는 템플릿 함수의 가장 특수화된 버전을 선택합니다. 알고리즘 클래스에서 템플릿 함수의 일반 버전인 template<T>void swap(T&, T> 클래스)은 할당에 의해 작동하며 느린 작업입니다. 각 컨테이너의 특수화된 버전은 컨테이너 클래스의 내부 표현을 사용할 수 있으므로 속도가 훨씬 빠릅니다.

예시

swap의 템플릿 버전을 사용하는 예제는 멤버 함수 map::swap에 대한 코드 예제를 참조하세요.

swap (multimap)

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

template <class key, class T, class _Pr, class _Alloc>
void swap(
    multimap<Key, Traits, Compare, Alloctor>& left,
    multimap<Key, Traits, Compare, Alloctor>& right);

매개 변수

right
교환할 요소를 제공하는 multimap 또는 요소를 왼쪽 multimap의 요소와 교환할 multimap입니다.

left
요소가 multimap 오른쪽의 요소와 교환될 multimap입니다.

설명

템플릿 함수는 컨테이너 클래스 multimap에서 실행하여 멤버 함수를 실행하기 위해 컨테이너 클래스 맵에 특수화된 알고리즘입니다 left.swap (right). 이 함수는 컴파일러에서 지정하는 함수 템플릿의 부분 순서 인스턴스입니다. 함수를 호출할 때 템플릿이 고유하게 일치하지 않는 방식으로 템플릿 함수가 오버로드되면 컴파일러는 템플릿 함수의 가장 특수화된 버전을 선택합니다. 알고리즘 클래스에서 템플릿 함수의 일반 버전인 template<T>void swap(T&, T> 클래스)은 할당에 의해 작동하며 느린 작업입니다. 각 컨테이너의 특수화된 버전은 컨테이너 클래스의 내부 표현을 사용할 수 있으므로 속도가 훨씬 빠릅니다.

예시

swap의 템플릿 버전을 사용하는 예제는 멤버 함수 multimap::swap에 대한 코드 예제를 참조하세요.