Libreria locale C ++ - in

Descrizione

Traduceva in caratteri e la funzione interrompe la conversione non appena non riesce a convertire un carattere, o una volta raggiunto from_end e il suo carattere viene convertito con successo.

Dichiarazione

Di seguito è riportata la dichiarazione per std :: ctype :: in.

C ++ 98

result in (state_type& state, 
   const extern_type* from, const extern_type* from_end, const extern_type*& from_next,
   intern_type* to, intern_type* to_limit, intern_type*& to_next) const;

C ++ 11

result in (state_type& state, 
   const extern_type* from, const extern_type* from_end, const extern_type*& from_next,
   intern_type* to, intern_type* to_limit, intern_type*& to_next) const;

Parametri

  • state - È un oggetto di stato.

  • from, from_end - Viene utilizzato per trovare i caratteri iniziali e finali della sequenza sorgente.

  • from_next - Viene utilizzato per trovare un elemento nell'intervallo sopra.

  • to_next - Viene utilizzato per trovare un elemento nell'intervallo sopra.

Valore di ritorno

Restituisce codecvt_base :: result.

Eccezioni

Se viene generata un'eccezione, non vengono apportate modifiche all'oggetto facet, sebbene i caratteri nell'intervallo potrebbero essere stati influenzati.

Gare di dati

Si accede all'oggetto e agli elementi nell'intervallo [basso, alto).

Esempio

Nell'esempio seguente viene spiegato lo std :: ctype :: in.

#include <iostream>
#include <locale>
#include <string>
#include <cwchar>

int main () {
   typedef std::codecvt<wchar_t,char,std::mbstate_t> facet_type;

   std::locale mylocale;

   const facet_type& myfacet = std::use_facet<facet_type>(mylocale);

   const char mystr[] = "Tutorialspoint.com";

   wchar_t pwstr[sizeof(mystr)];
   std::mbstate_t mystate = std::mbstate_t();
   const char* pc;
   wchar_t* pwc;

   facet_type::result myresult = myfacet.in (mystate,
      mystr, mystr+sizeof(mystr), pc, pwstr, pwstr+sizeof(mystr), pwc);

   if ( myresult == facet_type::ok ) {
      std::wcout << L"Translation was successful: ";
      std::wcout << pwstr << std::endl;
   }
   return 0;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

Translation was successful: Tutorialspoint.com