std:: moneypunct_byname
|
Definido en el encabezado
<locale>
|
||
|
template
<
class
CharT,
bool
Intl
=
false
>
class moneypunct_byname : public std:: moneypunct < CharT, Intl > ; |
||
std::moneypunct_byname
es una faceta
std::moneypunct
que encapsula las preferencias de formato monetario de una configuración regional especificada en su construcción.
Contenidos |
Especializaciones
La biblioteca estándar garantiza proporcionar cada especialización que cumpla con los siguientes requisitos de tipo:
-
CharTes uno de char y wchar_t , y -
Intles una posible especialización en un parámetro bool .
Tipos anidados
| Tipo | Definición |
pattern
|
std::money_base::pattern |
string_type
|
std:: basic_string < CharT > |
Funciones miembro
|
(constructor)
|
construye un nuevo facet
moneypunct_byname
(función miembro pública) |
|
(destructor)
|
destruye un facet
moneypunct_byname
(función miembro protegida) |
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
=
0
)
;
|
(desde C++11) | |
Construye una nueva faceta
std::moneypunct_byname
para una configuración regional con
name
.
refs se utiliza para la gestión de recursos: si refs == 0 , la implementación destruye la faceta cuando se destruye el último objeto std::locale que la contiene. De lo contrario, el objeto no se destruye.
Parámetros
| name | - | el nombre de la configuración regional |
| refs | - | el número de referencias que enlazan con la faceta |
std::moneypunct_byname:: ~moneypunct_byname
|
protected
:
~moneypunct_byname ( ) ; |
||
Destruye el facet.
Heredado de std:: moneypunct
Tipos anidados
| Tipo | Definición |
char_type
|
CharT
|
string_type
|
std:: basic_string < CharT > |
Miembros de datos
| Miembro | Descripción |
std::locale::id
id
[static]
|
el identificador del facet |
const
bool
intl
[static]
|
International |
Funciones miembro
invoca
do_decimal_point
(función miembro pública de
std::moneypunct<CharT,International>
)
|
|
invoca
do_thousands_sep
(función miembro pública de
std::moneypunct<CharT,International>
)
|
|
invoca
do_grouping
(función miembro pública de
std::moneypunct<CharT,International>
)
|
|
invoca
do_curr_symbol
(función miembro pública de
std::moneypunct<CharT,International>
)
|
|
invoca
do_positive_sign
o
do_negative_sign
(función miembro pública de
std::moneypunct<CharT,International>
)
|
|
invoca
do_frac_digits
(función miembro pública de
std::moneypunct<CharT,International>
)
|
|
invoca
do_pos_format
/
do_neg_format
(función miembro pública de
std::moneypunct<CharT,International>
)
|
Funciones miembro protegidas
|
[virtual]
|
proporciona el carácter a utilizar como punto decimal
(función miembro protegida virtual de
std::moneypunct<CharT,International>
)
|
|
[virtual]
|
proporciona el carácter a utilizar como separador de miles
(función miembro protegida virtual de
std::moneypunct<CharT,International>
)
|
|
[virtual]
|
proporciona el número de dígitos entre cada par de separadores de miles
(función miembro protegida virtual de
std::moneypunct<CharT,International>
)
|
|
[virtual]
|
proporciona la cadena a utilizar como identificador de moneda
(función miembro protegida virtual de
std::moneypunct<CharT,International>
)
|
|
[virtual]
|
proporciona la cadena para indicar un valor positivo o negativo
(función miembro protegida virtual de
std::moneypunct<CharT,International>
)
|
|
[virtual]
|
proporciona el número de dígitos a mostrar después del punto decimal
(función miembro protegida virtual de
std::moneypunct<CharT,International>
)
|
|
[virtual]
|
proporciona el patrón de formato para valores monetarios
(función miembro protegida virtual de
std::moneypunct<CharT,International>
)
|
Heredado de std:: money_base
Tipos anidados
| Tipo | Definición |
| enum part { none, space, symbol, sign, value } ; | tipo de enumeración no delimitada |
| struct pattern { char field [ 4 ] ; } ; | el tipo de formato monetario |
| Constante de enumeración | Descripción |
none
|
se permite espacio en blanco pero no es requerido excepto en la última posición, donde no se permite espacio en blanco |
space
|
se requiere uno o más caracteres de espacio en blanco |
symbol
|
se requiere la secuencia de caracteres devuelta por std::moneypunct::curr_symbol |
sign
|
se requiere el primero de los caracteres devueltos por std::moneypunct::positive_sign o std::moneypunct::negative_sign |
value
|
se requiere el valor monetario numérico absoluto |
Ejemplo
Este ejemplo demuestra cómo aplicar reglas de formato monetario de otro idioma sin cambiar el resto de la configuración regional.
#include <iomanip> #include <iostream> #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_byname<wchar_t>("ru_RU.utf8"))); std::wcout << L"american locale with russian moneypunct: " << std::put_money(mon) << '\n'; }
Salida:
american locale: $12,345.67 american locale with russian moneypunct: 12 345.67 руб
Véase también
|
define los parámetros de formato monetario utilizados por
std::money_get
y
std::money_put
(plantilla de clase) |