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) (bis C++20)

Vergleicht die Inhalte zweier ungeordneter Container.

Die Inhalte zweier ungeordneter Container lhs und rhs sind gleich, wenn folgende Bedingungen erfüllt sind:

  • lhs. size ( ) == rhs. size ( ) .
  • jede Gruppe äquivalenter Elemente [ lhs_eq1 , lhs_eq2 ) erhalten von lhs. equal_range ( lhs_eq1 ) hat eine entsprechende Gruppe äquivalenter Elemente im anderen Container [ rhs_eq1 , rhs_eq2 ) erhalten von rhs. equal_range ( rhs_eq1 ) , die folgende Eigenschaften aufweist:

Das Verhalten ist undefiniert, falls Key oder T nicht EqualityComparable sind.

Das Verhalten ist ebenfalls undefiniert, falls hash_function() und key_eq() nicht (bis C++20) key_eq() nicht (seit C++20) dasselbe Verhalten für lhs und rhs aufweisen oder falls operator == für Key keine Verfeinerung der Partitionierung in Äquivalenzklassen darstellt, die durch key_eq() eingeführt wurde (das heißt, wenn zwei Elemente, die mit operator == als gleich verglichen werden, in unterschiedliche Partitionen fallen).

Der != -Operator wird synthetisiert aus operator== .

(seit C++20)

Parameter

lhs, rhs - ungeordnete Container zum Vergleichen

Rückgabewert

1) true wenn die Inhalte der Container gleich sind, false andernfalls.
2) true wenn die Inhalte der Container nicht gleich sind, false andernfalls.

Komplexität

Proportional zu N Aufrufen von operator == auf value_type , Aufrufen des Prädikats zurückgegeben von key_eq , und Aufrufen des Hash-Funktion zurückgegeben von hash_function , im Durchschnittsfall, proportional zu N 2 im ungünstigsten Fall, wobei N die Größe des Containers ist.