Freigeben über


collate::hash

Bestimmt den Hashwert der Sequenz nach ihren Facetbesondereregeln.

long hash( 
   const CharType* _First, 
   const CharType* _Last 
) const;

Parameter

  • _First
    Ein Zeiger auf das erste Zeichen in der Sequenz, deren Wert verfügt, wird bestimmt werden.

  • _Last
    Ein Zeiger auf das letzte Zeichen in der Sequenz, deren Wert verfügt, wird bestimmt werden.

Rückgabewert

Ein Hashwert des Typs long für die Sequenz.

Hinweise

Die Memberfunktion gibt do_hash zurück (_First, _Last).

Ein Hashwert ist beispielsweise hilfreich wenn die Sequenzen verteilt, die über einem Array von Listen pseudo-sind.

Beispiel

// collate_hash.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <tchar.h>
using namespace std;

int main( )   
{
   locale loc ( "German_germany" );
   _TCHAR * s1 = _T("\x00dfzz abc."); // \x00df is the German sharp-s (looks like beta), it comes before z in the alphabet
   _TCHAR * s2 = _T("zzz abc."); // \x00df is the German sharp-s (looks like beta), it comes before z in the alphabet

   long r1 = use_facet< collate<_TCHAR> > ( loc ).
      hash (s1, &s1[_tcslen( s1 )-1 ]);
   long r2 =  use_facet< collate<_TCHAR> > ( loc ).
      hash (s2, &s2[_tcslen( s2 )-1 ] );
   cout << r1 << " " << r2 << endl;
}
  

Anforderungen

Gebietsschema Header: <>

Namespace: std

Siehe auch

Referenz

collate-Klasse