<map>
函数
swap (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
其元素将与映射 right 的元素进行交换的映射。
备注
模板函数是专用于容器类映射的算法,用以执行成员函数 left
swap( right
)。 这是由编译器进行的函数模板偏序实例。 模板函数以此种方式重载时,模板与函数调用的匹配并不唯一,随后编译器会选择此模板函数的最专用化版本。 模板函数的通用版本,template
< class T > void swap (T&,T&),在算法类中通过分配工作,并且是一个缓慢的操作。 每个容器中的专用化版本速度快很多,因为专用化版本可适用于容器类的内部表示形式。
示例
有关使用 swap
的模板版本的示例,请参阅成员函数 map::swap 的代码示例。
swap (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
多重映射提供要交换的元素或其元素要与多重映射 left 的元素进行交换。
left
其元素要与多重映射 right 的元素进行交换的多重映射。
备注
模板函数是专用于容器类映射的算法,用以在容器类多重映射上执行成员函数 left
swap ( right
)。 这是由编译器进行的函数模板偏序实例。 模板函数以此种方式重载时,模板与函数调用的匹配并不唯一,随后编译器会选择此模板函数的最专用化版本。 模板函数的通用版本,template
< class T > void swap (T&,T&),在算法类中通过分配工作,并且是一个缓慢的操作。 每个容器中的专用化版本速度快很多,因为专用化版本可适用于容器类的内部表示形式。
示例
有关使用 swap
的模板版本的示例,请参阅成员函数 multimap::swap 的代码示例。