Freigeben über


unordered_set::swap

Vertauscht den Inhalt von zwei Containern.

void swap(unordered_set& right);

Parameter

  • right
    Der Container, mit auszulagern.

Hinweise

Die Memberfunktion lagert der kontrollierten rightund *this zwischen Sequenzen aus.Wenn unordered_set::get_allocator() == right.get_allocator(), sodass er in der konstanten Zeitpunkt der Fall ist, löst nur infolge einer Ausnahme ab dem mit dem Kopieren des gespeicherten Merkmals Objekts vom Typ Trfehl, und es keine Verweise ungültig wird, Zeiger oder Iteratoren, die Elemente in den beiden Sequenzen gesteuerten festlegen.Andernfalls führt sie mehrere Element-Zuweisungen und Konstruktoraufrufe, die auf die Anzahl der Elemente in den beiden Sequenzen gesteuerten proportional sind.

Beispiel

 

// std_tr1__unordered_set__unordered_set_swap.cpp 
// compile with: /EHsc 
#include <unordered_set> 
#include <iostream> 
 
typedef std::unordered_set<char> Myset; 
int main() 
    { 
    Myset c1; 
 
    c1.insert('a'); 
    c1.insert('b'); 
    c1.insert('c'); 
 
// display contents " [c] [b] [a]" 
    for (Myset::const_iterator it = c1.begin(); 
        it != c1.end(); ++it) 
        std::cout << " [" << *it << "]"; 
    std::cout << std::endl; 
 
    Myset c2; 
 
    c2.insert('d'); 
    c2.insert('e'); 
    c2.insert('f'); 
 
    c1.swap(c2); 
 
// display contents " [f] [e] [d]" 
    for (Myset::const_iterator it = c1.begin(); 
        it != c1.end(); ++it) 
        std::cout << " [" << *it << "]"; 
    std::cout << std::endl; 
 
    swap(c1, c2); 
 
// display contents " [c] [b] [a]" 
    for (Myset::const_iterator it = c1.begin(); 
        it != c1.end(); ++it) 
        std::cout << " [" << *it << "]"; 
    std::cout << std::endl; 
 
    return (0); 
    } 
 
  

Anforderungen

Header: <unordered_set>

Namespace: std

Siehe auch

Referenz

<unordered_set>

unordered_set Class

swap Function (unordered_set)

Weitere Ressourcen

<unordered_set> Member