Поделиться через


hash_map::swap (STL/CLR)

Меняет местами содержимое двух контейнеров.

    void swap(hash_map<Key, Mapped>% right);

Параметры

  • правый
    Контейнер для обмена содержимым.

Заметки

Функция-член переключится в системе управления последовательности между this и right.Он выполняется в константные времени и не вызывает никаких исключений.Используется как быстрый способ обмена содержимым 2 контейнеров.

Пример

// cliext_hash_map_swap.cpp 
// compile with: /clr 
#include <cliext/hash_map> 
 
typedef cliext::hash_map<wchar_t, int> Myhash_map; 
int main() 
    { 
    Myhash_map c1; 
    c1.insert(Myhash_map::make_value(L'a', 1)); 
    c1.insert(Myhash_map::make_value(L'b', 2)); 
    c1.insert(Myhash_map::make_value(L'c', 3)); 
 
// display contents " [a 1] [b 2] [c 3]" 
    for each (Myhash_map::value_type elem in c1) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
 
// construct another container with repetition of values 
    Myhash_map c2; 
    c2.insert(Myhash_map::make_value(L'd', 4)); 
    c2.insert(Myhash_map::make_value(L'e', 5)); 
    c2.insert(Myhash_map::make_value(L'f', 6)); 
    for each (Myhash_map::value_type elem in c2) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
 
// swap and redisplay 
    c1.swap(c2); 
    for each (Myhash_map::value_type elem in c1) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
 
    for each (Myhash_map::value_type elem in c2) 
        System::Console::Write(" [{0} {1}]", elem->first, elem->second); 
    System::Console::WriteLine(); 
    return (0); 
    } 
 
  

Требования

заголовок: <cliext/hash_map>

Cliext пространство имен:

См. также

Ссылки

hash_map (STL/CLR)

hash_map::operator= (STL/CLR)