operator=,!=(std::unordered_map)

From cppreference.com

template< class Key, class T, class Hash, class KeyEqual, class Allocator >

void operator=( unordered_map<Key,T,Hash,KeyEqual,Allocator> &lhs,

                unordered_map<Key,T,Hash,KeyEqual,Allocator> &rhs);
(1)
template< class Key, class T, class Hash, class KeyEqual, class Allocator >

void operator!=( unordered_map<Key,T,Hash,KeyEqual,Allocator> &lhs,

                 unordered_map<Key,T,Hash,KeyEqual,Allocator> &rhs);
(2)

Compares the contents of two unordered containers.

The contents of two unordered containers lhs and rhs are equivalent if the following conditions hold:

  • lhs.size() == rhs.size()
  • each group of equivalent keys [lhs_eq1, lhs_eq2) has a corresponding group of equivalent keys in the other container [rhs_eq1, rhs_eq2), that has the following properties:

The behavior is undefined if Key or T are not EqualityComparable.

[edit] Parameters

lhs, rhs - unordered containers to compare

[edit] Return value

1) true if the contents of the containers are equivalent, false otherwise
2) true if the contents of the containers are not equivalent, false otherwise

[edit] Complexity

N comparisons of the keys in the average case, N2 in the worst case, where N is the size of the container.