// Frac.h - interface file for Frac (fraction) type #if !defined(FRAC_H) #define FRAC_H #include using namespace std; class Frac { public: // at least some methods must be public Frac(); // default constructor Frac( int n, int d ); // explicit value constructor void invert( void ); // inverts fraction int getNumerator( void ) const; // reader for nu int getDenominator( void ) const; // reader for de void setNumerator( int ); // writer for nu void setDenominator( int ); // writer for de void write( ostream& out ); // write fraction to ostream private: // instance var's almost always private int nu; // numerator int de; // denominator }; ostream& operator<<( ostream&, Frac& ); // stream insert a Frac object Frac& operator+( Frac&, Frac& ); // add two Fracs, yielding a third #endif