SourcePro® C++ 2016 |
SourcePro® C++ API Reference Guide |
Product Documentation: SourcePro C++ Documentation Home |
Base class for the family of Rogue Wave decimal classes. More...
#include <rw/tools/decbase.h>
Public Types | |
enum | Op { assign, add, sub, mult, div, powop, pow10op, conversion } |
enum | RoundingMethod { PLAIN, UP, DOWN, BANKERS, TRUNCATE } |
enum | State { normal, nullstate, NaNstate, ctorError, missingstate, SNaNstate, infinitystate } |
Public Member Functions | |
void | swap (RWDecimalBase &rhs) |
The base class for the different RWDecimal classes. This class provides the definition of enums used in the derived classes and in the related classes RWDecimalInexactErr and RWDecimalOverflowErr.
enum RWDecimalBase::Op |
An enumeration defining the operation that caused the error handler to be called.
Enumerator | |
---|---|
assign |
|
add |
|
sub |
|
mult |
|
div |
|
powop |
|
pow10op |
|
conversion |
|
Rounding methods used by RWDecimalPortable::round()
The following table shows the results of the different rounding methods.
Method | 1.25 | 1.35 | 1.251 |
PLAIN | 1.2 | 1.3 | 1.2 |
UP | 1.3 | 1.4 | 1.3 |
DOWN | 1.2 | 1.3 | 1.2 |
TRUNCATE | 1.2 | 1.3 | 1.2 |
BANKERS | 1.2 | 1.4 | 1.3 |
Enumerator | |
---|---|
PLAIN |
Round up on a tie. |
UP |
Always round up. |
DOWN |
Always round down. |
BANKERS |
On a tie, round so that last digit is even. |
TRUNCATE |
Same as DOWN. |
enum RWDecimalBase::State |
An enumeration defining the state of the object.
Any operation on nullstate
returns the other operand.
Any operation on NaN provides a NaN result.
Any operation on ctorError
or missingstate
returns a result with the State ctorError
or missingstate
respectively.
Operations on infinitystate
are as follows:
Operation | Result |
\(n \div \pm Infinity\) | 0 |
\(\pm Infinity \times \pm Infinity\) | \(\pm Infinity\) |
\(Infinity + Infinity\) | \(Infinity\) |
\(Infinity - Infinity\) | NaN |
\(\pm Infinity \div \pm Infinity\) | NaN |
\(\pm Infinity \times 0\) | NaN |
SNaNstate
does not generate signals, unless converted to a double or long double and used in double arithmetic.
|
inline |
Swaps the data owned by self with the data owned by rhs.
Copyright © 2016 Rogue Wave Software, Inc. All Rights Reserved. |