Compartir a través de


hash_set::value_comp

Nota

Esta API está obsoleta.La alternativa es unordered_set (Clase).

Recupera una copia del objeto de comparación utilizado para los valores pedidos de un hash_set.

value_compare value_comp( ) const;

Valor devuelto

Devuelve el objeto function que un hash_set utiliza para ordenar los elementos, que es el parámetro Comparede la plantilla.

Para obtener más información sobre Compare, vea la sección comentarios de tema de hash_set (Clase) .

Comentarios

El objeto almacenado define la función miembro:

bool operator(const Key&_xVal, _yValde const Key& );

qué devuelve true si _xVal precede y no es igual a _yVal en el criterio de ordenación.

Observe que value_compare y key_compare son sinónimos para el parámetro Comparede la plantilla. Proporcionan ambos tipos de las clases de hash_set y de hash_multiset, donde son idénticos, para la compatibilidad con las clases de hash_map y de hash_multimap, donde distintos.

En Visual C++ .NET 2003, los miembros de los archivos de encabezado <hash_map> y <hash_set> ya no están en el espacio de nombres std, sino que se han movido al espacio de nombres stdext. Vea El espacio de nombres stdext para obtener más información.

Ejemplo

// hash_set_value_comp.cpp
// compile with: /EHsc
#include <hash_set>
#include <iostream>

int main( )
{
   using namespace std;
   using namespace stdext;
   
   hash_set <int, hash_compare < int, less<int> > > hs1;
   hash_set <int, hash_compare < int, less<int> >  >::value_compare
      vc1 = hs1.value_comp( );
   bool result1 = vc1( 2, 3 );
   if( result1 == true )
   {
      cout << "vc1( 2,3 ) returns value of true, "
           << "where vc1 is the function object of hs1."
           << endl;
   }
   else
   {
      cout << "vc1( 2,3 ) returns value of false, "
           << "where vc1 is the function object of hs1."
           << endl;
   }

   hash_set <int, hash_compare < int, greater<int> > > hs2;
   hash_set<int, hash_compare < int, greater<int> > >::value_compare
      vc2 = hs2.value_comp( );
   bool result2 = vc2( 2, 3 );
   if( result2 == true )
   {
      cout << "vc2( 2,3 ) returns value of true, "
           << "where vc2 is the function object of hs2."
           << endl;
   }
   else
   {
      cout << "vc2( 2,3 ) returns value of false, "
           << "where vc2 is the function object of hs2."
           << endl;
   }
}

Resultados

vc1( 2,3 ) returns value of true, where vc1 is the function object of hs1.
vc2( 2,3 ) returns value of false, where vc2 is the function object of hs2.

Requisitos

Encabezado: <hash_set>

Espacio de nombres: stdext

Vea también

Referencia

hash_set (Clase)

Biblioteca de plantillas estándar