/** * \file * \brief C++ API: Currency Unit Information.
*/
U_NAMESPACE_BEGIN
/** * A unit of currency, such as USD (U.S. dollars) or JPY (Japanese * yen). This class is a thin wrapper over a char16_t string that * subclasses MeasureUnit, for use with Measure and MeasureFormat. * * @author Alan Liu * @stable ICU 3.0
*/ class U_I18N_API CurrencyUnit: public MeasureUnit { public: /** * Default constructor. Initializes currency code to "XXX" (no currency). * @stable ICU 60
*/
CurrencyUnit();
/** * Construct an object with the given ISO currency code. * * @param isoCode the 3-letter ISO 4217 currency code; must have * length 3 and need not be NUL-terminated. If nullptr, the currency * is initialized to the unknown currency XXX. * @param ec input-output error code. If the isoCode is invalid, * then this will be set to a failing value. * @stable ICU 3.0
*/
CurrencyUnit(ConstChar16Ptr isoCode, UErrorCode &ec);
/** * Construct an object with the given ISO currency code. * * @param isoCode the 3-letter ISO 4217 currency code; must have * length 3. If invalid, the currency is initialized to XXX. * @param ec input-output error code. If the isoCode is invalid, * then this will be set to a failing value. * @stable ICU 64
*/
CurrencyUnit(StringPiece isoCode, UErrorCode &ec);
/** * Copy constructor from MeasureUnit. This constructor allows you to * restore a CurrencyUnit that was sliced to MeasureUnit. * * @param measureUnit The MeasureUnit to copy from. * @param ec Set to a failing value if the MeasureUnit is not a currency. * @stable ICU 60
*/
CurrencyUnit(const MeasureUnit& measureUnit, UErrorCode &ec);
/** * Return a polymorphic clone of this object. The result will * have the same class as returned by getDynamicClassID(). * @stable ICU 3.0
*/ virtual CurrencyUnit* clone() const override;
/** * 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 ISO currency code of this object. * @stable ICU 3.0
*/ inlineconst char16_t* getISOCurrency() const;
private: /** * The ISO 4217 code of this object.
*/
char16_t isoCode[4];
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.