public member function
<locale>

std::moneypunct::curr_symbol

string_type curr_symbol() const;
Return currency symbol
Returns the string used to represent the currency identifier symbol.

Internally, this function simply calls the virtual protected member do_curr_symbol, which for the standard specializations returns the proper string.

Parameters

none

Return value

The string used to represent the currency symbol.
For the instantiations using international format, this is generally a four-character string composed of the three letters corresponding to the international code for the currency, followed by a space.
An empty string signals no currency symbol setting.
Member type string_type is a basic_string type with the same character type as the facet (defined as an alias of basic_string<charT>, where charT is moneypunct's first template parameter).

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// moneypunct example
#include <iostream>       // std::cout
#include <locale>         // std::locale, std::moneypunct, std::use_facet

// overload inserter to print patterns:
std::ostream& operator<< (std::ostream& os, std::moneypunct<char>::pattern p)
{
  for (int i=0; i<4; i++)
    switch (p.field[i]) {
      case std::moneypunct<char>::none: std::cout << "none "; break;
      case std::moneypunct<char>::space: std::cout << "space "; break;
      case std::moneypunct<char>::symbol: std::cout << "symbol "; break;
      case std::moneypunct<char>::sign: std::cout << "sign "; break;
      case std::moneypunct<char>::value: std::cout << "value "; break;
    }
  return os;
}

int main ()
{
  std::locale mylocale;
  const std::moneypunct<char>& mp = std::use_facet<std::moneypunct<char> >(mylocale);

  std::cout << "moneypunct in locale \"" << mylocale.name() << "\":\n";

  std::cout << "decimal_point: " << mp.decimal_point() << '\n';
  std::cout << "thousands_sep: " << mp.thousands_sep() << '\n';
  std::cout << "grouping: " << mp.grouping() << '\n';
  std::cout << "curr_symbol: " << mp.curr_symbol() << '\n';
  std::cout << "positive_sign: " << mp.positive_sign() << '\n';
  std::cout << "negative_sign: " << mp.negative_sign() << '\n';
  std::cout << "frac_digits: " << mp.frac_digits() << '\n';
  std::cout << "pos_format: " << mp.pos_format() << '\n';
  std::cout << "neg_format: " << mp.neg_format() << '\n';
  
  return 0;
}


Possible output:

moneypunct in locale "C":
decimal_point:
thousands_sep:
grouping:
curr_symbol:
positive_sign:
negative_sign: -
frac_digits: 0
pos_format: symbol sign none value
neg_format: symbol sign none value

Data races

The facet is accessed.

Exception safety

Strong guarantee: No side effects in case an exception is thrown.

See also