U_NAMESPACE_BEGIN
CurrencyFormat::CurrencyFormat(const Locale& locale, UErrorCode& ec) :
- MeasureFormat(locale, UMEASFMT_WIDTH_WIDE, ec), fmt(NULL)
+ MeasureFormat(locale, UMEASFMT_WIDTH_WIDE, ec)
{
- fmt = NumberFormat::createCurrencyInstance(locale, ec);
}
CurrencyFormat::CurrencyFormat(const CurrencyFormat& other) :
- MeasureFormat(other), fmt(NULL)
+ MeasureFormat(other)
{
- fmt = (NumberFormat*) other.fmt->clone();
}
CurrencyFormat::~CurrencyFormat() {
- delete fmt;
}
Format* CurrencyFormat::clone() const {
FieldPosition& pos,
UErrorCode& ec) const
{
- return fmt->format(obj, appendTo, pos, ec);
+ return getCurrencyFormatInternal().format(obj, appendTo, pos, ec);
}
void CurrencyFormat::parseObject(const UnicodeString& source,
Formattable& result,
ParsePosition& pos) const
{
- CurrencyAmount* currAmt = fmt->parseCurrency(source, pos);
+ CurrencyAmount* currAmt = getCurrencyFormatInternal().parseCurrency(source, pos);
if (currAmt != NULL) {
result.adoptObject(currAmt);
}