Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Nagłówek <unordered_map> zawiera następujące funkcje:
swap (unordered_map)
Zamienia zawartości dwóch kontenerów.
template <class Key, class Ty, class Hash, class Pred, class Alloc>
void swap(
unordered_map <Key, Ty, Hash, Pred, Alloc>& left,
unordered_map <Key, Ty, Hash, Pred, Alloc>& right);
Parametry
Klawisz
Typ klucza.
Ty
Typ mapowany.
Skrót
Typ obiektu funkcji mieszania.
Pred
Typ obiektu funkcji porównywania równości.
Alloc
Klasa alokatora.
Lewy
Pierwszy kontener do zamiany.
Prawy
Drugi kontener do zamiany.
Uwagi
Funkcja szablonu wykonuje left.unordered_map::swap(right).
Przykład
// std__unordered_map__u_m_swap.cpp
// compile with: /EHsc
#include <unordered_map>
#include <iostream>
typedef std::unordered_map<char, int> Mymap;
int main()
{
Mymap c1;
c1.insert(Mymap::value_type('a', 1));
c1.insert(Mymap::value_type('b', 2));
c1.insert(Mymap::value_type('c', 3));
// display contents " [c 3] [b 2] [a 1]"
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
Mymap c2;
c2.insert(Mymap::value_type('d', 4));
c2.insert(Mymap::value_type('e', 5));
c2.insert(Mymap::value_type('f', 6));
c1.swap(c2);
// display contents " [f 6] [e 5] [d 4]"
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
swap(c1, c2);
// display contents " [c 3] [b 2] [a 1]"
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
return (0);
}
[c, 3] [b, 2] [a, 1]
[f, 6] [e, 5] [d, 4]
[c, 3] [b, 2] [a, 1]
swap (unordered_multimap)
Zamienia zawartości dwóch kontenerów.
template <class Key, class Ty, class Hash, class Pred, class Alloc>
void swap(
unordered_multimap <Key, Ty, Hash, Pred, Alloc>& left,
unordered_multimap <Key, Ty, Hash, Pred, Alloc>& right);
Parametry
Klawisz
Typ klucza.
Ty
Typ mapowany.
Skrót
Typ obiektu funkcji mieszania.
Pred
Typ obiektu funkcji porównywania równości.
Alloc
Klasa alokatora.
Lewy
Pierwszy kontener do zamiany.
Prawy
Drugi kontener do zamiany.
Uwagi
Funkcja szablonu wykonuje left.unordered_multimap::swap(right).
Przykład
// std__unordered_map__u_mm_swap.cpp
// compile with: /EHsc
#include <unordered_map>
#include <iostream>
typedef std::unordered_multimap<char, int> Mymap;
int main()
{
Mymap c1;
c1.insert(Mymap::value_type('a', 1));
c1.insert(Mymap::value_type('b', 2));
c1.insert(Mymap::value_type('c', 3));
// display contents " [c 3] [b 2] [a 1]"
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
Mymap c2;
c2.insert(Mymap::value_type('d', 4));
c2.insert(Mymap::value_type('e', 5));
c2.insert(Mymap::value_type('f', 6));
c1.swap(c2);
// display contents " [f 6] [e 5] [d 4]"
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
swap(c1, c2);
// display contents " [c 3] [b 2] [a 1]"
for (Mymap::const_iterator it = c1.begin();
it != c1.end(); ++it)
std::cout << " [" << it->first << ", " << it->second << "]";
std::cout << std::endl;
return (0);
}
[c, 3] [b, 2] [a, 1]
[f, 6] [e, 5] [d, 4]
[c, 3] [b, 2] [a, 1]