Descrição
Associa loc para o stream e seu buffer de stream associado (se houver) como o novo objeto locale a ser usado com operações sensíveis ao locale.
Esta função chama seu homônimo herdado ios_base :: imbue (loc) e, se o fluxo estiver associado a um buffer de fluxo, também chama rdbuf () -> pubimbue (loc).
Declaração
A seguir está a declaração para a função ios :: imbue.
locale imbue (const locale& loc);
Parâmetros
loc - Objeto Locale a ser incorporado como o novo local para o fluxo.
Valor de retorno
O objeto de localidade associado ao fluxo antes da chamada.
Exceções
Basic guarantee - se uma exceção for lançada, o fluxo está em um estado válido.
Corridas de dados
Modifica o objeto stream.
O acesso simultâneo ao mesmo objeto de fluxo pode causar disputas de dados.
Exemplo
No exemplo abaixo explica sobre a função ios :: imbue.
#include <iostream>
#include <locale>
int main() {
std::locale mylocale("");
std::cout.imbue(mylocale);
std::cout << 3.14159 << '\n';
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
3.14159