Partager via


collate::compare

Compare deux séquences de caractères conformément à les règles de facette- à leur égalité et leur inégalité.

int compare( 
   const CharType* _First1, 
   const CharType* _Last1, 
   const CharType* _First2, 
   const CharType* _Last2 
) const;

Paramètres

  • _First1
    Pointeur vers le premier élément dans la première séquence à comparer.

  • _Last1
    Pointeur vers le dernier élément de la première séquence à comparer.

  • _First2
    Pointeur vers le premier élément dans la deuxième séquence à comparer.

  • _Last2
    Pointeur vers le dernier élément dans la deuxième séquence à comparer.

Valeur de retour

La fonction membre :

  • – 1 si la première séquence compare inférieure à la deuxième séquence.

  • +1 si la deuxième séquence compare moins que la première séquence.

  • 0 si les séquences sont équivalentes.

Notes

La première séquence compare moins si elle possède l'élément inférieure de la paire irréguliers les versions antérieures des séquences, ou, si une paire inégale n'existe pas, mais que la première séquence est plus courte.

La fonction retourne do_comparemembre (_First1, _Last1, _First2, _Last2).

Exemple

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

int main() {
   locale loc ( "German_germany" );
   _TCHAR * s1 = _T("Das ist wei\x00dfzz."); // \x00df is the German sharp-s, it comes before z in the German alphabet
   _TCHAR * s2 = _T("Das ist weizzz.");
   int result1 = use_facet<collate<_TCHAR> > ( loc ).
      compare ( s1, &s1[_tcslen( s1 )-1 ],  s2, &s2[_tcslen( s2 )-1 ] );
   cout << result1 << endl;

   locale loc2 ( "C" );
   int result2 = use_facet<collate<_TCHAR> > ( loc2 ).
      compare (s1, &s1[_tcslen( s1 )-1 ],  s2, &s2[_tcslen( s2 )-1 ] );
   cout << result2 << endl;
}

Résultat de l'exemple

-1
1

Configuration requise

**En-tête :**paramètres régionaux <de >

Espace de noms : std

Voir aussi

Référence

collate, classe