Class Moneypunct

An object used for localization of monetary punctuation.

Listing: Template Class Moneypunct Synopsis
namespace std {
class money_base {

public:

enum part { none, space, symbol, sign, value };

struct pattern { char field[4]; };

};

template <class charT, bool International = false>

class moneypunct : public locale::facet, public money_base {

public:

typedef charT char_type;

typedef basic_string<charT> string_type;

explicit moneypunct(size_t refs = 0);

charT decimal_point() const;

charT thousands_sep() const;

string grouping() const;

string_type curr_symbol() const;

string_type positive_sign() const;

string_type negative_sign() const;

int frac_digits() const;

pattern pos_format() const;

pattern neg_format() const;

static locale::id id;

static const bool intl = International;

protected:

~moneypunct(); //virtual 

virtual charT do_decimal_point() const;

virtual charT do_thousands_sep() const;

virtual string do_grouping() const;

virtual string_type do_curr_symbol() const;

virtual string_type do_positive_sign() const;

virtual string_type do_negative_sign() const;

virtual int do_frac_digits() const;

virtual pattern do_pos_format() const;

virtual pattern do_neg_format() const;

};

}