// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
/*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright ( c ) 2004 - 2006 , International Business Machines
* Corporation and others . All Rights Reserved .
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Author : Alan Liu
* Created : April 26 , 2004
* Since : ICU 3 . 0
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*/
#ifndef __CURRENCYAMOUNT_H__
#define __CURRENCYAMOUNT_H__
#include "unicode/utypes.h"
#if U_SHOW_CPLUSPLUS_API
#if !UCONFIG_NO_FORMATTING
#include "unicode/measure.h"
#include "unicode/currunit.h"
/**
* \ file
* \ brief C + + API : Currency Amount Object .
*/
U_NAMESPACE_BEGIN
/**
*
* A currency together with a numeric amount , such as 200 USD .
*
* @ author Alan Liu
* @ stable ICU 3 . 0
*/
class U_I18N_API CurrencyAmount:
public Measure {
public :
/**
* Construct an object with the given numeric amount and the given
* ISO currency code .
* @ param amount a numeric object ; amount . isNumeric ( ) must be true
* @ param isoCode the 3 - letter ISO 4217 currency code ; must not be
* nullptr and must have length 3
* @ param ec input - output error code . If the amount or the isoCode
* is invalid , then this will be set to a failing value .
* @ stable ICU 3 . 0
*/
CurrencyAmount(
const Formattable& amount, ConstChar16Ptr isoCode,
UErrorCode &ec);
/**
* Construct an object with the given numeric amount and the given
* ISO currency code .
* @ param amount the amount of the given currency
* @ param isoCode the 3 - letter ISO 4217 currency code ; must not be
* nullptr and must have length 3
* @ param ec input - output error code . If the isoCode is invalid ,
* then this will be set to a failing value .
* @ stable ICU 3 . 0
*/
CurrencyAmount(
double amount, ConstChar16Ptr isoCode,
UErrorCode &ec);
/**
* Copy constructor
* @ stable ICU 3 . 0
*/
CurrencyAmount(
const CurrencyAmount& other);
/**
* Assignment operator
* @ stable ICU 3 . 0
*/
CurrencyAmount&
operator =(
const CurrencyAmount& other);
/**
* Return a polymorphic clone of this object . The result will
* have the same class as returned by getDynamicClassID ( ) .
* @ stable ICU 3 . 0
*/
virtual CurrencyAmount* clone()
const override;
/**
* Destructor
* @ stable ICU 3 . 0
*/
virtual ~CurrencyAmount();
/**
* Returns a unique class ID for this object POLYMORPHICALLY .
* This method implements a simple form of RTTI used by ICU .
* @ return The class ID for this object . All objects of a given
* class have the same class ID . Objects of other classes have
* different class IDs .
* @ stable ICU 3 . 0
*/
virtual UClassID getDynamicClassID()
const override;
/**
* Returns the class ID for this class . This is used to compare to
* the return value of getDynamicClassID ( ) .
* @ return The class ID for all objects of this class .
* @ stable ICU 3 . 0
*/
static UClassID U_EXPORT2 getStaticClassID();
/**
* Return the currency unit object of this object .
* @ stable ICU 3 . 0
*/
const CurrencyUnit& getCurrency()
const ;
/**
* Return the ISO currency code of this object .
* @ stable ICU 3 . 0
*/
inline const char16_t* getISOCurrency()
const ;
};
inline const char16_t* CurrencyAmount::getISOCurrency()
const {
return getCurrency().getISOCurrency();
}
U_NAMESPACE_END
#endif // !UCONFIG_NO_FORMATTING
#endif /* U_SHOW_CPLUSPLUS_API */
#endif // __CURRENCYAMOUNT_H__
Messung V0.5 in Prozent C=88 H=100 G=94
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet am 2026-09-30)
¤
*© Formatika GbR, Deutschland