| | | | | |

Operator Overloading 2

  • Bracket operator implemented in class scope
  • int& IntArray::operator [] (size_t i)
    {
      return *(data_ + i);
    }
    
  • Output operator implemented outside of class scope
  • ostream& operator << (ostream& os, const IntArray& a)
    {
      for (size_t i = 0; i < a.Size() - 1; ++i)
        os << a[i] << ' ';
      os << a[a.Size() - 1] << '\n';
      return os;
    }
    

| | Top of Page | 6. C++ Classes Part 2: Advanced Features - 13 of 22