|
CGAL 6.0 - Number Types
|
#include <CGAL/Gmpz.h>
An object of the class Gmpz is an arbitrary precision integer based on the GMP Library.
EuclideanRing RealEmbeddable Implementation
Gmpzs are reference counted.
Related Functions | |
(Note that these are not member functions.) | |
| Gmpz | operator>> (const Gmpz &a, unsigned long i) |
rightshift by i. | |
| Gmpz | operator<< (const Gmpz &a, unsigned long i) |
leftshift by i. | |
| Gmpz | operator& (const Gmpz &a, const Gmpz &b) |
| bitwise AND. | |
| Gmpz | operator| (const Gmpz &a, const Gmpz &b) |
| bitwise IOR. | |
| Gmpz | operator^ (const Gmpz &a, const Gmpz &b) |
| bitwise XOR. | |
| std::ostream & | operator<< (std::ostream &out, const Gmpz &z) |
writes z to the ostream out. | |
| std::istream & | operator>> (std::istream &in, Gmpz &z) |
reads an integer from in, then converts it to a Gmpz. | |
Operations | |
| Gmpz & | operator++ () |
| prefix increment. | |
| Gmpz | operator++ (int) |
| postfix increment. | |
| Gmpz & | operator-- () |
| prefix decrement. | |
| Gmpz | operator-- (int) |
| postfix decrement. | |
| Gmpz & | operator>>= (const long &i) |
rightshift by i, where i >= 0. | |
| Gmpz & | operator<<= (const long &i) |
leftshift by i, where i >= 0. | |
| Gmpz & | operator&= (const Gmpz &b) |
| bitwise AND. | |
| Gmpz & | operator|= (const Gmpz &b) |
| bitwise IOR. | |
| Gmpz & | operator^= (const Gmpz &b) |
| bitwise XOR. | |
| Sign | sign () const |
Returns the sign of z. | |
| size_t | bit_size () const |
Returns the bit-size (that is, the number of bits needed to represent the mantissa) of z. | |
| size_t | size () const |
Returns the size in limbs of z. | |
| size_t | approximate_decimal_length () const |
Returns the approximate number of decimal digits needed to represent z. | |
| double | to_double () const |
Returns a double approximation of z. | |
| size_t CGAL::Gmpz::approximate_decimal_length | ( | ) | const |
Returns the approximate number of decimal digits needed to represent z.
Approximate means either a correct result, either the correct result plus one.
| size_t CGAL::Gmpz::size | ( | ) | const |
Returns the size in limbs of z.
A limb is the type used by GMP to represent the integer (usually long).
| double CGAL::Gmpz::to_double | ( | ) | const |
Returns a double approximation of z.
The integer is truncated if needed. If the exponent of the conversion is too big, the result is system dependent (returning infinity where it is supported).