#ifndef NUMBERREP_H #define NUMBERREP_H #include "Number.h" class Fraction; class Integer; class NumberRep { public: virtual void display() const = 0; virtual Number add(const NumberRep *r) const = 0; // *this + *r virtual Number div(const NumberRep *r) const = 0; // *this / *r virtual NumberRep * copy() const = 0; virtual ~NumberRep() {} virtual Number revAdd(const Integer *l) const = 0; // *l + *this virtual Number revDiv(const Integer *l) const = 0; // *l / *this virtual Number revAdd(const Fraction *l) const = 0; // *l + *this virtual Number revDiv(const Fraction *l) const = 0; // *l / *this }; #endif