11 typedef int64_t digit_t;
14 Arbint(unsigned n, digit_t d0, ...);
15 Arbint(const std::string & str, const std::string & base="0123456789");
17 Arbint(const Arbint & cpy);
20 inline bool Sign() const {return m_sign;}
21 inline char SignChar() const {return (m_sign) ? '-' : '+';}
22 std::string DigitStr() const;
24 std::string Str(const std::string & base="0123456789") const;
25 inline std::string Str(const char * base) const
27 return Str(std::string(base));
30 Arbint & operator=(const Arbint & equ);
31 Arbint & operator+=(const Arbint & add);
32 Arbint & operator-=(const Arbint & sub);
35 bool operator==(const Arbint & equ) const;
38 inline Arbint operator+(const Arbint & add) const
44 inline Arbint operator-(const Arbint & add) const
50 inline bool operator!=(const Arbint & equ) const
52 return !this->operator==(equ);
58 Arbint & AddBasic(const Arbint & add);
59 Arbint & SubBasic(const Arbint & sub);
61 std::vector<digit_t> m_digits;
72 typedef int64_t digit_t;
73 digit_t add_digits(digit_t * dst, digit_t * add, digit_t size);
74 digit_t sub_digits(digit_t * dst, digit_t * add, digit_t size);