map::swap (STL/CLR)
Меняет местами содержимое двух контейнеров.
void swap(map<Key, Mapped>% right);
Параметры
- правый
Контейнер для обмена содержимым.
Заметки
Функция-член переключится в системе управления последовательности между this и right.Он выполняется в константные времени и не вызывает никаких исключений.Используется как быстрый способ обмена содержимым 2 контейнеров.
Пример
// cliext_map_swap.cpp
// compile with: /clr
#include <cliext/map>
typedef cliext::map<wchar_t, int> Mymap;
int main()
{
Mymap c1;
c1.insert(Mymap::make_value(L'a', 1));
c1.insert(Mymap::make_value(L'b', 2));
c1.insert(Mymap::make_value(L'c', 3));
// display contents " [a 1] [b 2] [c 3]"
for each (Mymap::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
// construct another container with repetition of values
Mymap c2;
c2.insert(Mymap::make_value(L'd', 4));
c2.insert(Mymap::make_value(L'e', 5));
c2.insert(Mymap::make_value(L'f', 6));
for each (Mymap::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 (Mymap::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
for each (Mymap::value_type elem in c2)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
System::Console::WriteLine();
return (0);
}
Требования
заголовок: <cliext и сопоставление>
Cliext пространство имен: