std::numpunct<CharT>::truename, do_truename, falsename, do_falsename
Определено в заголовке <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) Публичный член-функция, вызывает член-функцию
do_truename и do_falsename соответственно самого производного класса.
3) Возвращает строку, используемую для представления логического значения
true.
4) Возвращает строку, используемую для представления логического значения
false.Значение результата
1,3) Объект типа
string_type для использования в качестве представления true. Стандартные специализации std::numpunct возвращают "true" и L"true".
2,4) Объект типа
string_type для использования в качестве представления false. Стандартные специализации std::numpunct возвращают "false" и L"false".Пример
#include <iomanip>
#include <iostream>
#include <locale>
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;
// default boolalpha output
std::cout << "Default locale,\n"
" boolalpha true: " << true << "\n"
" boolalpha false: " << false << "\n\n";
// with custom_tf applied to locale
std::cout.imbue(std::locale(std::cout.getloc(), new custom_tf));
std::cout << "Locale with modified numpunct,\n"
" boolalpha true: " << true << "\n"
" boolalpha false: " << false << '\n';
}Вывод:
Default locale, boolalpha true: true boolalpha false: false Locale with modified numpunct, boolalpha true: t boolalpha false: f
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/locale/numpunct/truefalsename