Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
![]() |
---|
Diese API ist veraltet.Die Alternative ist unordered_multimap Class. |
Die Memberfunktion gibt ein Funktionsobjekt zurück, das die Reihenfolge der Elemente in einem hash_multimap bestimmt, indem es ihre Schlüsselwerte vergleicht.
value_compare value_comp( ) const;
Rückgabewert
Gibt das Vergleichsfunktionsobjekt zurück, dem ein hash_multimap verwendet, um die Elemente zu sortieren.
Hinweise
Ein hash_multimap m, wenn zwei Elemente (k1e1 und e2, d1) (k2, d2) Objekte des Typs value_type sind, in dem k1 und k2 ihre Schlüssel des Typs key_type sind und d1 und 2 d ihre Daten des Typs mapped_type sind, dann *M.*value_comp() (e1, e2) ist *mit M.*key_comp() (k1, zu k2) entspricht.Ein gespeichertes Objekt definiert die Memberfunktion
bool operator(value_type&_Left, value_type& _Right);
das true zurückgibt, wenn der Schlüsselwert von _Left nicht dem Schlüsselwert von _Right in der Sortierreihenfolge vor und ist.
In Visual C++ .NET 2003, sind Member der <hash_map> und <hash_set> Headerdateien nicht mehr im stdnamespace, sondern sind in den stdext Namespace verschoben wurde.Weitere Informationen finden Sie unter Der stdext-Namespace.
Beispiel
// hash_multimap_value_comp.cpp
// compile with: /EHsc
#include <hash_map>
#include <iostream>
int main( )
{
using namespace std;
using namespace stdext;
hash_multimap <int, int, hash_compare<int, less<int> > > hm1;
hash_multimap <int, int, hash_compare<int, less<int> >
>::value_compare vc1 = hm1.value_comp( );
hash_multimap <int,int>::iterator Iter1, Iter2;
Iter1= hm1.insert ( hash_multimap <int, int> :: value_type ( 1, 10 ) );
Iter2= hm1.insert ( hash_multimap <int, int> :: value_type ( 2, 5 ) );
if( vc1( *Iter1, *Iter2 ) == true )
{
cout << "The element ( 1,10 ) precedes the element ( 2,5 )."
<< endl;
}
else
{
cout << "The element ( 1,10 ) does "
<< "not precede the element ( 2,5 )."
<< endl;
}
if( vc1( *Iter2, *Iter1 ) == true )
{
cout << "The element ( 2,5 ) precedes the element ( 1,10 )."
<< endl;
}
else
{
cout << "The element ( 2,5 ) does "
<< "not precede the element ( 1,10 )."
<< endl;
}
}
Ausgabe
The element ( 1,10 ) precedes the element ( 2,5 ).
The element ( 2,5 ) does not precede the element ( 1,10 ).
Anforderungen
Header: <hash_map>
Namespace: stdext