std::numpunct::truename, do_truename, falsename, do_falsename
From cppreference.com
Defined in header
<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) Public member function, calls the member function
do_truename
and do_falsename
of the most derived class respectively.
3-4) Returns the string to be used as the representation of the boolean value true.
[edit] Return value
1-2) The object of type
string_type
to use as the representation of true. The standard specializations of std::numpunct
return "true" and L"true".
3-4) The object of type
string_type
to use as the representation of false. The standard specializations of std::numpunct
return "false" and L"false".[edit] Example
Run this code
#include <iostream> #include <locale> #include <iomanip> struct custom_tf : std::numpunct<char> { std::string do_truename() const { return "t"; } std::string do_falsename() const { return "f"; } }; int main() { std::cout << std::boolalpha; std::cout << "default locale: " << true << true << false << false << '\n'; std::cout.imbue(std::locale(std::cout.getloc(), new custom_tf)); std::cout << "locale with modified numpunct: " << true << true << false << false << '\n'; }
Output:
default locale: truetruefalsefalse locale with modified numpunct: ttff