previous | start | next

Implementation of operator<<

The implementation of this function is almost like the print function. If it were exactly like the body of the print we would have:

ostream& operator<<(ostream& os, const Fraction& f)
{
  cout << f.getNumerator() << "/" << f.getDenominator();
  // But we need to return an ostream value!
}

But since cout is passed by reference, os is a alias for cout in this function. So a correct implementation is

ostream& operator<<(ostream& os, const Fraction& f)
{
   os << f.getNumerator() << "/" f.getDenominator();

   return os;
}



previous | start | next