std::numpunct::truename, do_truename, falsename, do_falsename
De cppreference.com
| Definido en el archivo de encabezado <locale>
|
||
public:
string_type truename() const;
|
(1) | |
public:
string_type falsename() const;
|
(2) | |
protected:
virtual string_type do_truename() const;
|
(3) | |
protected:
virtual string_type do_falsename() const;
|
(4) | |
1,2) Función miembro pública, llama a la función miembro
do_truename y do_falsename de la clase más derivada respectivamente.3) Devuelve la cadena que se utilizará como representación del valor booleano
true.4) Devuelve la cadena que se utilizará como representación del valor booleano
false.Valor de retorno
1,3) El objeto de tipo
string_type que se utilizará como representación de true. Las especializaciones estándar de std::numpunct devuelven "true" y L"true".2,4) El objeto de tipo
string_type que se utilizará como representación de false. Las especializaciones estándar de std::numpunct devuelven "false" y L"false".Ejemplo
Ejecuta este código
#include <iomanip>
#include <iostream>
#include <locale>
struct es_tf : std::numpunct<char> // español
{
std::string do_truename() const { return {"verdadero"}; }
std::string do_falsename() const { return {"falso"}; }
};
int main()
{
std::cout << std::boolalpha;
// salida de boolalpha por defecto
std::cout << "Configuración regional por defecto,\n"
" boolalpha verdadero: " << true << "\n"
" boolalpha falso: " << false << "\n\n";
// con es_tf aplicado a la configuración regional
std::cout.imbue(std::locale(std::cout.getloc(), new es_tf));
std::cout << "Configuración regional con numpunct modificado,\n"
" boolalpha verdadero: " << true << "\n"
" boolalpha falso: " << false << '\n';
}
Salida:
Configuración regional por defecto,
boolalpha verdadero: true
boolalpha falso: false
Configuración regional con numpunct modificado,
boolalpha verdadero: verdadero
boolalpha falso: falso