Biblioteca de configuración regional de C ++ - en

Descripción

Solía ​​traducir en caracteres y la función deja de convertir tan pronto como falla al convertir un carácter, o una vez que se alcanza from_end y su carácter se convierte correctamente.

Declaración

A continuación se muestra la declaración para 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;

Parámetros

  • state - Es un objeto de estado.

  • from, from_end - Se utiliza para encontrar caracteres iniciales y finales de la secuencia fuente.

  • from_next - Se utiliza para buscar un elemento en el rango anterior.

  • to_next - Se utiliza para buscar un elemento en el rango anterior.

Valor devuelto

Devuelve codecvt_base :: result.

Excepciones

Si se lanza una excepción, no hay cambios en el objeto de faceta, aunque es posible que los personajes del rango se hayan visto afectados.

Carreras de datos

Se accede al objeto y a los elementos del rango [bajo, alto).

Ejemplo

En el siguiente ejemplo se explica sobre 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;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

Translation was successful: Tutorialspoint.com