ICU 57.1  57.1
Public Member Functions | Static Public Member Functions | Protected Member Functions
Measure Class Reference

An amount of a specified unit, consisting of a number and a Unit. More...

#include <measure.h>

Inheritance diagram for Measure:
UObject UMemory CurrencyAmount TimeUnitAmount

Public Member Functions

 Measure (const Formattable &number, MeasureUnit *adoptedUnit, UErrorCode &ec)
 Construct an object with the given numeric amount and the given unit. More...
 
 Measure (const Measure &other)
 Copy constructor. More...
 
Measureoperator= (const Measure &other)
 Assignment operator. More...
 
virtual UObjectclone () const
 Return a polymorphic clone of this object. More...
 
virtual ~Measure ()
 Destructor. More...
 
UBool operator== (const UObject &other) const
 Equality operator. More...
 
const FormattablegetNumber () const
 Return a reference to the numeric value of this object. More...
 
const MeasureUnitgetUnit () const
 Return a reference to the unit of this object. More...
 
virtual UClassID getDynamicClassID (void) const
 Returns a unique class ID POLYMORPHICALLY. More...
 
- Public Member Functions inherited from UObject
virtual ~UObject ()
 Destructor. More...
 

Static Public Member Functions

static UClassID getStaticClassID (void)
 Return the class ID for this class. More...
 

Protected Member Functions

 Measure ()
 Default constructor. More...
 

Detailed Description

An amount of a specified unit, consisting of a number and a Unit.

For example, a length measure consists of a number and a length unit, such as feet or meters.

Measure objects are formatted by MeasureFormat.

Measure objects are immutable.

Author
Alan Liu
Stable:
ICU 3.0

Definition at line 41 of file measure.h.

Constructor & Destructor Documentation

◆ Measure() [1/3]

Measure::Measure ( const Formattable number,
MeasureUnit adoptedUnit,
UErrorCode ec 
)

Construct an object with the given numeric amount and the given unit.

After this call, the caller must not delete the given unit object.

Parameters
numbera numeric object; amount.isNumeric() must be TRUE
adoptedUnitthe unit object, which must not be NULL
ecinput-output error code. If the amount or the unit is invalid, then this will be set to a failing value.
Stable:
ICU 3.0

◆ Measure() [2/3]

Measure::Measure ( const Measure other)

Copy constructor.

Stable:
ICU 3.0

◆ ~Measure()

virtual Measure::~Measure ( )
virtual

Destructor.

Stable:
ICU 3.0

◆ Measure() [3/3]

Measure::Measure ( )
protected

Default constructor.

Stable:
ICU 3.0

Member Function Documentation

◆ clone()

virtual UObject* Measure::clone ( ) const
virtual

Return a polymorphic clone of this object.

The result will have the same class as returned by getDynamicClassID().

Stable:
ICU 3.0

Reimplemented in TimeUnitAmount, and CurrencyAmount.

◆ getDynamicClassID()

virtual UClassID Measure::getDynamicClassID ( void  ) const
virtual

Returns a unique class ID POLYMORPHICALLY.

Pure virtual override. This method is to implement a simple version of RTTI, since not all C++ compilers support genuine RTTI. Polymorphic operator==() and clone() methods call this method.

Returns
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 53

Reimplemented from UObject.

Reimplemented in TimeUnitAmount, and CurrencyAmount.

◆ getNumber()

const Formattable & Measure::getNumber ( ) const
inline

Return a reference to the numeric value of this object.

The numeric value may be of any numeric type supported by Formattable.

Stable:
ICU 3.0

Definition at line 148 of file measure.h.

◆ getStaticClassID()

static UClassID Measure::getStaticClassID ( void  )
static

Return the class ID for this class.

This is useful only for comparing to a return value from getDynamicClassID(). For example:

.   Base* polymorphic_pointer = createPolymorphicObject();
.   if (polymorphic_pointer->getDynamicClassID() ==
.       erived::getStaticClassID()) ...
Returns
The class ID for all objects of this class.
Stable:
ICU 53

◆ getUnit()

const MeasureUnit & Measure::getUnit ( ) const
inline

Return a reference to the unit of this object.

Stable:
ICU 3.0

Definition at line 152 of file measure.h.

Referenced by CurrencyAmount::getCurrency().

◆ operator=()

Measure& Measure::operator= ( const Measure other)

Assignment operator.

Stable:
ICU 3.0

◆ operator==()

UBool Measure::operator== ( const UObject other) const

Equality operator.

Return true if this object is equal to the given object.

Stable:
ICU 3.0

The documentation for this class was generated from the following file: