== (operador) (unordered_map)

Comprueba si el objeto de unordered_map en el lado izquierdo del operador es igual al objeto de unordered_map en el lado derecho.

bool operator==( 
   const unordered_map <Key, Type, Hash, Pred, Allocator>& _Left, 
   const unordered_map <Key, Type, Hash, Pred, Allocator>& _Right 
);

Parámetros

  • _Left
    Objeto de tipo unordered_map.

  • _Right
    Objeto de tipo unordered_map.

Valor devuelto

true si los unordered_maps son iguales; false si no son iguales.

Comentarios

La comparación entre los objetos de unordered_map no se ve afectado por el orden arbitrario en que almacenan sus elementos. Dos unordered_maps son iguales si tienen el mismo número de elementos y los elementos de un contenedor son una permutación de los elementos en otro contenedor. De lo contrario, son desiguales.

Ejemplo

// unordered_map_op_eq.cpp
// compile by using: cl.exe /EHsc /nologo /W4 /MTd 
#include <unordered_map>
#include <iostream>
#include <ios>

int main( )
{
   using namespace std;
   unordered_map<int, int> um1, um2, um3;
   
   for ( int i = 0 ; i < 3 ; ++i ) {
      um1.insert( make_pair( i+1, i ) );
      um1.insert( make_pair( i, i ) );

      um2.insert( make_pair( i, i+1 ) );
      um2.insert( make_pair( i, i ) );
      
      um3.insert( make_pair( i, i ) );
      um3.insert( make_pair( i+1, i ) );
   }

   cout << boolalpha;
   cout << "um1 == um2: " << (um1 == um2) << endl; 
   cout << "um1 == um3: " << (um1 == um3) << endl; 
   cout << "um2 == um3: " << (um2 == um3) << endl; 
}

Resultado:

um1 == um2: false

um1 == um3: true

um2 == um3: false

Requisitos

Encabezado: <unordered_map>

Espacio de nombres: std

Vea también

Referencia

Biblioteca de plantillas estándar