37struct Punct: std::numpunct<char>
44 return "numeric formatting";
63 const std::locale
loc (std::cout.getloc (),
punct);
66 std::cout.imbue (
loc);
69 const std::num_put<char> &nput =
70 std::use_facet<std::num_put<char> >(std::cout.getloc ());
73 std::ostreambuf_iterator<char> it = std::cout.rdbuf ();
76 std::cout.setf (std::ios::boolalpha);
77 *nput.put (it, std::cout,
' ',
true) =
'\n';
81 std::cout.setf (std::ios::fixed | std::ios::right);
83 const double Pi = 3.14159265358979323846;
86 *nput.put (it, std::cout,
'.',
long (Pi)) =
'\n';
90 std::cerr.setf (std::ios::right | std::ios::uppercase);
91 std::cerr.setf (std::ios::hex, std::ios::basefield);
92 *nput.put (it, std::cerr,
' ', 3735928559UL) =
'\n';
95 std::cout.setf (std::ios::internal, std::ios::adjustfield);
96 std::cout.setf (std::ios::showpos);
99 *nput.put (it, std::cout,
' ', Pi) =
'\n';
102 *nput.put (it, std::cout,
' ', Pi * 1000000) =
'\n';
105 std::cout.precision (11);
106 std::cout.setf (std::ios::scientific, std::ios::floatfield);
107 *nput.put (it, std::cout,
' ', Pi * 1000000) =
'\n';
char do_decimal_point() const
std::string do_grouping() const
char do_thousands_sep() const
string_type do_truename() const
Base::string_type string_type