Mega Code Archive

 
Categories / C++ Tutorial / Development
 

Make a new locale and attach it to the standard output stream

#include <iomanip> #include <iostream> #include <locale> using namespace std; class Separator_facet: public numpunct<char> {    public:    explicit Separator_facet( size_t refs = 0): numpunct<char>( refs ){}    protected:    virtual string do_grouping() const{ return "\3"; } }; int main() {    const int million = 1000000;    const double number = 1234.56789;    cout << million << fixed << setprecision( 5 ) << number;    locale separator_locale( cout.getloc(), new Separator_facet );    cout.imbue( separator_locale );    cout << million << " " << number << endl; }