Biblioteca de configuración regional de C ++: ampliar

Descripción

Se usa en caracteres de ampliación e internamente, esta función simplemente llama al miembro virtual protegido do_widen, que hace lo anterior de forma predeterminada tanto en la plantilla genérica como en la especialización de caracteres (ctype <char>).

Declaración

A continuación se muestra la declaración para std :: ctype :: widen.

C ++ 98

char_type tolower (char_type c) const;

C ++ 11

char_type tolower (char_type c) const;

Parámetros

  • c - Es un tipo char.

  • low,high - Es un puntero al principio y al final de la secuencia de caracteres.

  • to - Es un puntero a una variedad de elementos del tipo de carácter de la faceta.

Valor devuelto

Devuelve la transformación de c.

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

http://tpcg.io/YqaGeY

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

Ejemplo

En el siguiente ejemplo se explica sobre std :: ctype :: widen.

#include <iostream>
#include <locale>
int main () {
   std::locale loc;

   const char narrow_phrase[] = "Sairamkrishna Mammahe";
   wchar_t wide_phrase[sizeof(narrow_phrase)];

   std::wcout << L"The first wide character is: ";
   wchar_t wc = std::use_facet< std::ctype<wchar_t> >(loc).widen ( *narrow_phrase );
   std::wcout << wc << std::endl;

   std::wcout << L"The wide-character phrase is: ";
   std::use_facet< std::ctype<wchar_t> >(loc).widen (narrow_phrase,
                                                    narrow_phrase+sizeof(narrow_phrase),
                                                    wide_phrase);
   std::wcout << wide_phrase << std::endl;

   return 0;
}

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

The first wide character is: S
The wide-character phrase is: Sairamkrishna Mammahe