Partager via


collate::transform

Convertit une séquence de caractères les paramètres régionaux d'une chaîne qui peut être utilisée dans les comparaisons lexicographiques avec d'autres séquences de caractères converties de les mêmes paramètres régionaux.

string_type transform( 
   const CharType* _First, 
   const CharType* _Last 
) const;

Paramètres

  • _First
    Pointeur vers le premier caractère de la séquence à convertir.

  • _Last
    Pointeur vers le dernier caractère de la séquence à convertir.

Valeur de retour

Chaîne qui contient la séquence de caractères transformées.

Notes

La fonction retourne do_transformmembre (_First, _Last).

Exemple

// collate_transform.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."); 

   collate<_TCHAR>::string_type r1;   // OK for typedef?
   r1 = use_facet< collate<_TCHAR> > ( loc ).
      transform (s1, &s1[_tcslen( s1 )-1 ]);
   
   cout << r1 << endl;

   basic_string<_TCHAR> r2 = use_facet< collate<_TCHAR> > ( loc ).
      transform (s2, &s2[_tcslen( s2 )-1 ]);
   
   cout << r2 << endl;

   int result1 = use_facet<collate<_TCHAR> > ( loc ).compare 
      (s1, &s1[_tcslen( s1 )-1 ],  s2, &s2[_tcslen( s2 )-1 ] );

   cout << _tcscmp(r1.c_str( ),r2.c_str( )) << result1 
      << _tcscmp(s1,s2) <<endl;
}
  

Configuration requise

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

Espace de noms : std

Voir aussi

Référence

collate, classe