Namespaces
Variants

operator==,!= (std::unordered_map)

From cppreference.net

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

bool operator == ( const std:: unordered_map < Key, T, Hash, KeyEqual, Alloc > & lhs,

const std:: unordered_map < Key, T, Hash, KeyEqual, Alloc > & rhs ) ;
(1)
template < class Key, class T, class Hash, class KeyEqual, class Alloc >

bool operator ! = ( const std:: unordered_map < Key, T, Hash, KeyEqual, Alloc > & lhs,

const std:: unordered_map < Key, T, Hash, KeyEqual, Alloc > & rhs ) ;
(2) (hasta C++20)

Compara el contenido de dos contenedores no ordenados.

Los contenidos de dos contenedores no ordenados lhs y rhs son iguales si se cumplen las siguientes condiciones:

  • lhs. size ( ) == rhs. size ( ) .
  • cada grupo de elementos equivalentes [ lhs_eq1 , lhs_eq2 ) obtenido de lhs. equal_range ( lhs_eq1 ) tiene un grupo correspondiente de elementos equivalentes en el otro contenedor [ rhs_eq1 , rhs_eq2 ) obtenido de rhs. equal_range ( rhs_eq1 ) , que tiene las siguientes propiedades:

El comportamiento es indefinido si Key o T no son EqualityComparable .

El comportamiento también es indefinido si hash_function() y key_eq() no (until C++20) key_eq() no (since C++20) tienen el mismo comportamiento en lhs y rhs o si operator == para Key no es un refinamiento de la partición en grupos de claves equivalentes introducida por key_eq() (es decir, si dos elementos que comparan igual usando operator == caen en particiones diferentes).

El operador != es sintetizado a partir de operator== .

(since C++20)

Parámetros

lhs, rhs - contenedores desordenados a comparar

Valor de retorno

1) true si los contenidos de los contenedores son iguales, false en caso contrario.
2) true si los contenidos de los contenedores no son iguales, false en caso contrario.

Complejidad

Proporcional a N llamadas a operator == en value_type , llamadas al predicado devuelto por key_eq , y llamadas al hasher devuelto por hash_function , en el caso promedio, proporcional a N 2 en el peor caso donde N es el tamaño del contenedor.