-/*
- * Milan Tomic had trouble compiling this file on Microsoft
- * Visual C++ 6 because, in the libraries that come with
- * Visual C++ 6, the `std::string::push_back' method apparently
- * does not exist. To get around the problem, I rewrote
- * `BigUnsignedInABase::operator std::string' (at the bottom
- * of this file) so it doesn't use `push_back'.
- */
+BigUnsignedInABase::BigUnsignedInABase(const Digit *d, Index l, Base base)
+ : NumberlikeArray<Digit>(d, l), base(base) {
+ // Check the base
+ if (base < 2)
+ throw "BigUnsignedInABase::BigUnsignedInABase(const Digit *, Index, Base): The base must be at least 2";