Descripción
Asocia loc tanto a la secuencia como a su búfer de secuencia asociado (si lo hay) como el nuevo objeto de configuración regional que se utilizará con operaciones sensibles a la configuración regional.
Esta función llama a su homónimo heredado ios_base :: imbue (loc) y, si el flujo está asociado con un búfer de flujo, también llama a rdbuf () -> pubimbue (loc).
Declaración
A continuación se muestra la declaración de la función ios :: imbue.
locale imbue (const locale& loc);
Parámetros
loc - Objeto de configuración regional que se imbuirá como la nueva configuración regional de la transmisión.
Valor devuelto
El objeto de configuración regional asociado con la transmisión antes de la llamada.
Excepciones
Basic guarantee - si se lanza una excepción, el flujo está en un estado válido.
Carreras de datos
Modifica el objeto de flujo.
El acceso simultáneo al mismo objeto de flujo puede provocar carreras de datos.
Ejemplo
En el siguiente ejemplo se explica la función ios :: imbue.
#include <iostream>
#include <locale>
int main() {
std::locale mylocale("");
std::cout.imbue(mylocale);
std::cout << 3.14159 << '\n';
return 0;
}
Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:
3.14159