<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
。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 的程式碼範例。