swap (hash_map)

swap (hash_map)

 
System_CAPS_noteNote

This API is obsolete. The alternative is unordered_map Class.

Exchanges the elements of two hash_maps.

void swap(
   hash_map <Key, Type, Traits, Alloctor>& _Left,
   hash_map <Key, Type, Traits, Allocator>& _Right
);

_Right

The hash_map whose elements are to be exchanged with those of the map _Left.

_Left

The hash_map whose elements are to be exchanged with those of the map _Right.

The template function is an algorithm specialized on the container class hash_map to execute the member function _Left.swap(_Right). This is an instance of the partial ordering of function templates by the compiler. When template functions are overloaded in such a way that the match of the template with the function call is not unique, then the compiler will select the most specialized version of the template function. The general version of the template function, template <class T> void swap(T&, T&), in the algorithm header file works by assignment and is a slow operation. The specialized version in each container is much faster as it can work with the internal representation of the container class.

In Visual C++ .NET 2003, members of the <hash_map> and <hash_set> header files are no longer in the std namespace, but rather have been moved into the stdext namespace. See The stdext Namespace for more information.

Example

See the example for the member function hash_map::swapor an example of the use of the template version of swap.

Requirements

Header: <hash_map>

Namespace: stdext

Show:
© 2016 Microsoft