money_put::do_put

Una función virtual denominada para convertir el número o una cadena a una secuencia de caracteres que representa un valor monetario.

virtual iter_type do_put(
    iter_type _Next, 
    bool _Intl, 
    ios_base& _Iosbase,
    CharType _Fill, 
    const string_type& _Val
) const;
virtual iter_type do_put(
    iter_type _Next, 
    bool _Intl, 
    ios_base& _Iosbase,
    CharType _Fill,
    long double _Val
) const;

Parámetros

  • _Next
    Un iterador que dirige el primer elemento de cadena inline.

  • _Intl
    Un valor booleano que indica el tipo de símbolo de divisa esperado en la secuencia: TRUE si internacional, Falso si es nacional.

  • _Iosbase
    Un indicador de formato que cuando el conjunto indica que el símbolo de moneda es opcional; si no, se requiere

  • _Fill
    Un carácter que se utiliza para agregar espacios.

  • _Val
    Un objeto string que se va a convertir.

Valor devuelto

Un iterador de salida las direcciones que la posición una más allá del último elemento generó.

Comentarios

La primera función protegida miembro virtual representa elementos secuenciales que comienzan en _Next para presentar un campo monetario de salida del objeto _Valde string_type .La secuencia controlada por _Val debe comenzar con uno o más dígitos decimales, precedidos opcionalmente por un signo menos (–), que representa la cantidad.La función devuelve un iterador que designa el primer elemento más allá del campo monetario generado de salida.

La segunda función protegida miembro virtual se comporta igual que el primero, salvo que la primera convierte eficazmente _Val a una secuencia de dígitos decimales, precedida opcionalmente por un signo menos, después convierte esa secuencia como anteriormente.

El formato de un campo monetario de salida está determinado por el fac de faceta de configuración regional devuelto por la llamada (efectiva) use_facet <moneypunct<CharType, internacional> > (iosbase.getloc).

De manera específica:

  • fac.pos_format determina el orden en que se generan los componentes de campo por un valor negativo.

  • fac.negative_format determina el orden en que se generan los componentes de campo por un valor negativo.

  • fac.curr_symbol determina la secuencia de elementos para un símbolo de moneda.

  • fac.positive_sign determina la secuencia de elementos para un signo positivo.

  • fac.negative_sign determina la secuencia de elementos para un signo negativo.

  • fac.el agrupar determina cómo los dígitos se agrupan a la izquierda del separador decimal.

  • fac.thousands_sep determina el elemento que separa los grupos de dígitos a la izquierda del separador decimal.

  • fac.decimal_point determina el elemento que separa los dígitos integrales de cualquier dígito de fracción.

  • fac.frac_digits determina el número de dígitos significativos de la fracción a la derecha del separador decimal.

Si la cadena del signo (fac.negative_sign o fac.positive_sign) tiene más de un elemento, solo se genera el primer elemento donde el elemento igual a money_base:: signo aparece en el modelo de formato (fac.neg_format o fac.pos_format).Cualquier elemento restante se genera al final de campo monetario de salida.

Si iosbase.flagsy el showbasees distinto de cero, el fac de la cadena**.** curr_symbolse genera donde el elemento igual al money_base**:: el símbolo aparece** en el modelo de formato.si no, no se genera ningún símbolo de moneda.

Si no se impone ninguna restricción de agrupación por fac.el agrupar (el primer elemento tiene el valor CHAR_MAX), entonces instancias de fac.thousands_sep se representa en la parte del valor del campo monetario out (donde el elemento igual a money_base::Valor aparece en el modelo de formato).si fac.frac_digits es cero, entonces ninguna instancia de fac.decimal_point se genera después de los dígitos decimales.Si no, el campo monetario resultante de salida coloca facde orden inferior. dígitos decimales defrac_digits a la derecha del separador decimal.

El relleno aparece con respecto a un campo numérico de salida, pero si iosbase.flags y iosbase.internales distinto de cero, se genera cualquier relleno interno donde el elemento igual a la base de money_:: el espacio aparece en el modelo de formato, si aparece.Si no, el relleno interno aparece antes de la secuencia generada.el carácter de relleno es relleno.

las llamadas de función iosbase.ancho(0) para restablecer el ancho de campo en cero.

Ejemplo

Vea el ejemplo para título, donde la función miembro virtual llaman título.

Requisitos

encabezado: <configuración regional>

espacio de nombres: std

Vea también

Referencia

money_put Class