#ifndef FIXED_HPP # define FIXED_HPP #include #include #include class Fixed { public: Fixed(void); // default/parametric constructor Fixed(Fixed const & src); // copy constructor ~Fixed(void); // destructor Fixed(int integer); Fixed(float const floater); Fixed & operator= (Fixed const & rhs); // assignement operator // Fixed operator+ (Fixed const & rhs) const; bool operator< (Fixed const & rhs) const; // Fixed operator> (Fixed const & rhs) const; // Fixed operator<=(Fixed const & rhs) const; // Fixed operator>=(Fixed const & rhs) const; // Fixed operator==(Fixed const & rhs) const; // Fixed operator!=(Fixed const & rhs) const; int getRawBits(void) const; void setRawBits(int const raw); float toFloat(void) const; int toInt(void) const; private: int _value; static int const _frac; static int const _max; }; std::ostream & operator<<(std::ostream & o, Fixed const & rhs); #endif