<set>
함수
swap (set)
두 set의 요소를 교환합니다.
template <class Key, class Traits, class Allocator>
void swap(set<Key, Traits, Allocator>& left, set<Key, Traits, Allocator>& right);
매개 변수
right
교환할 요소를 제공하는 집합 또는 요소가 왼쪽 집합의 요소와 교환될 집합입니다.
left
요소가 오른쪽 집합의 요소와 교환될 집합입니다.
설명
템플릿 함수는 멤버 left.
함수 교환(right
)을 실행하기 위해 설정된 컨테이너 클래스에 특수화된 알고리즘입니다. 이 함수는 컴파일러에서 지정하는 함수 템플릿의 부분 순서 인스턴스입니다. 함수를 호출할 때 템플릿이 고유하게 일치하지 않는 방식으로 템플릿 함수가 오버로드되면 컴파일러는 템플릿 함수의 가장 특수화된 버전을 선택합니다. 알고리즘 클래스 내 템플릿 함수의 일반 버전
template
<classT>void swap( T&, T&)
는 할당을 통해 작동하며 속도가 느린 작업입니다. 각 컨테이너의 특수화된 버전은 컨테이너 클래스의 내부 표현을 사용할 수 있으므로 속도가 훨씬 빠릅니다.
예시
swap
의 템플릿 버전 사용 예제를 보려면 구성원 클래스 set::swap에 대한 코드 예제를 참조하세요.
swap (multiset)
두 multiset의 요소를 교환합니다.
template <class Key, class Traits, class Allocator>
void swap(multiset<Key, Traits, Allocator>& left, multiset<Key, Traits, Allocator>& right);
매개 변수
right
교환할 요소를 제공하는 다중 집합 또는 요소를 왼쪽의 다중 집합과 교환할 multiset입니다.
left
요소가 multiset 오른쪽의 요소와 교환될 multiset입니다.
설명
템플릿 함수는 멤버 left.
함수 교환(right
)을 실행하기 위해 컨테이너 클래스 다중 집합에 특수화된 알고리즘입니다. 이 함수는 컴파일러에서 지정하는 함수 템플릿의 부분 순서 인스턴스입니다. 함수를 호출할 때 템플릿이 고유하게 일치하지 않는 방식으로 템플릿 함수가 오버로드되면 컴파일러는 템플릿 함수의 가장 특수화된 버전을 선택합니다. 알고리즘 클래스 내 템플릿 함수의 일반 버전
template
<classT>void swap( T&, T&)
는 할당을 통해 작동하며 속도가 느린 작업입니다. 각 컨테이너의 특수화된 버전은 컨테이너 클래스의 내부 표현을 사용할 수 있으므로 속도가 훨씬 빠릅니다.
예시
swap
의 템플릿 버전 사용 예제를 보려면 구성원 클래스 multiset::swap에 대한 코드 예제를 참조하세요.