Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::moneypunct_byname(3)     C++ Standard Libary    std::moneypunct_byname(3)

NAME
       std::moneypunct_byname -	std::moneypunct_byname

Synopsis
	  Defined in header <locale>
	  template< class CharT, bool Intl = false >
	  class	moneypunct_byname : public std::moneypunct<CharT, Intl>;

	  std::moneypunct_byname is a std::moneypunct facet which encapsulates
       monetary
	  formatting preferences of a locale specified at its construction.

	  Two specializations are provided by the standard library

	  Defined in header <locale>
	  std::moneypunct_byname<char,	Intl>	  locale-specific  std::money-
       punct facet for
						narrow character I/O
	  std::moneypunct_byname<wchar_t,  Intl>  locale-specific  std::money-
       punct facet for wide
						character I/O

Member types
	  Member type Definition
	  pattern     std::money_base::pattern
	  string_type std::basic_string<CharT>

Member functions
	  constructor	constructs a new moneypunct_byname facet
			(public	member function)
	  destructor	destroys a moneypunct_byname facet
			(protected member function)

       std::moneypunct_byname::moneypunct_byname

	  explicit  moneypunct_byname(	const char* name, std::size_t refs = 0
       );
	  explicit moneypunct_byname(  const  std::string&  name,  std::size_t
       refs  (since C++11)
	  = 0 );

	  Constructs  a	 new  std::moneypunct_byname  facet  for a locale with
       name.

	  refs is used for resource management:	if refs	== 0, the  implementa-
       tion destroys the
	  facet,  when	the  last  std::locale object holding it is destroyed.
       Otherwise, the
	  object is not	destroyed.

Parameters
	  name - the name of the locale
	  refs - the number of references that link to the facet

       std::moneypunct_byname::~moneypunct_byname

	  protected:
	  ~moneypunct_byname();

	  Destroys the facet.

       Inherited from std::moneypunct

Member types
	  Member type Definition
	  char_type   CharT
	  string_type std::basic_string<CharT>

Member functions
	  decimal_point	invokes	do_decimal_point
			(public	member function	 of  std::moneypunct<CharT,In-
       ternational>)
	  thousands_sep	invokes	do_thousands_sep
			(public	 member	 function of std::moneypunct<CharT,In-
       ternational>)
	  grouping	invokes	do_grouping
			(public	member function	 of  std::moneypunct<CharT,In-
       ternational>)
	  curr_symbol	invokes	do_curr_symbol
			(public	 member	 function of std::moneypunct<CharT,In-
       ternational>)
	  positive_sign	invokes	do_positive_sign or do_negative_sign
	  negative_sign	(public	member function	 of  std::moneypunct<CharT,In-
       ternational>)
	  frac_digits	invokes	do_frac_digits
			(public	 member	 function of std::moneypunct<CharT,In-
       ternational>)
	  pos_format	invokes	do_pos_format/do_neg_format
	  neg_format	(public	member function	 of  std::moneypunct<CharT,In-
       ternational>)

Protected member functions
	  do_decimal_point provides the	character to use as decimal point
	  [virtual]	   (virtual protected member function of
			   std::moneypunct<CharT,International>)
	  do_thousands_sep  provides the character to use as thousands separa-
       tor
	  [virtual]	   (virtual protected member function of
			   std::moneypunct<CharT,International>)
			   provides the	numbers	of digits between each pair of
       thousands
	  do_grouping	   separators
	  [virtual]	   (virtual protected member function of
			   std::moneypunct<CharT,International>)
	  do_curr_symbol   provides the	string to use as the currency  identi-
       fier
	  [virtual]	   (virtual protected member function of
			   std::moneypunct<CharT,International>)
	  do_positive_sign provides the	string to indicate a positive or nega-
       tive value
	  do_negative_sign (virtual protected member function of
	  [virtual]	   std::moneypunct<CharT,International>)
	  do_frac_digits    provides the number	of digits to display after the
       decimal point
	  [virtual]	   (virtual protected member function of
			   std::moneypunct<CharT,International>)
	  do_pos_format	   provides the	formatting pattern for currency	values
	  do_neg_format	   (virtual protected member function of
	  [virtual]	   std::moneypunct<CharT,International>)

Member constants
	  Member		   Definition
	  const	bool intl (static) International

Member objects
	  static std::locale::id id id of the locale
				    (public member object)

       Inherited from std::money_base

	  Member type					  Definition
	  enum part { none, space, symbol, sign, value }; unscoped enumeration
       type
	  struct pattern { char	field[4]; };		  the monetary	format
       type

	  Enumeration constant Definition
	  none		       whitespace is permitted but not required	except
       in the last
			       position, where whitespace is not permitted
	  space		       one or more whitespace characters are required
	  symbol		the  sequence of characters returned by	money-
       punct::curr_symbol
			       is required
			       the first of the	characters returned by
	  sign		       moneypunct::positive_sign or  moneypunct::nega-
       tive_sign is
			       required
	  value		       the absolute numeric monetary value is required

Example
	  This	example	demonstrates how to apply monetary formatting rules of
       another language
	  without changing the rest of the locale.

       // Run this code

	#include <iostream>
	#include <iomanip>
	#include <locale>
	int main()
	{
	    long double	mon = 1234567;
	    std::locale::global(std::locale("en_US.utf8"));
	    std::wcout.imbue(std::locale());
	    std::wcout << L"american locale : "	<< std::showbase
		       << std::put_money(mon) << '\n';
	    std::wcout.imbue(std::locale(std::wcout.getloc(),
					 new		   std::moneypunct_by-
       name<wchar_t>("ru_RU.utf8")));
	    std::wcout << L"american locale with russian moneypunct: "
		       << std::put_money(mon) << '\n';
	}

Output:
	american locale	: $12,345.67
	american locale	with russian moneypunct: 12 345.67

See also
		     defines	monetary   formatting	parameters   used   by
       std::money_get and
	  moneypunct std::money_put
		     (class template)

http://cppreference.com		  2022.07.31	     std::moneypunct_byname(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::moneypunct_byname&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help