std::numpunct::truename, do_truename, falsename, do_falsename - cppreference.com

##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::numpunct::truename, do_truename, falsename, do_falsename

From cppreference.com
< cpp‎ | locale‎ | numpunct

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

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/locale/numpunct/truefalsename&oldid=62394"