Перевантаження оператору підрядкового індексу

class ArrayClass {
 public:
     int mArray[5];
     int& operator[](int i) {
          return mArray[i];
     }
};

int main() {

     ArrayClass a;
     a[0] = 1;  
     a[1] = 2;  
     a[2] = 3;  
     a[3] = 4; 
     a[4] = 5;  

     for (int i = 0; i < 5; i++)
     {
          cout << a[i] << endl;
     }

     system("pause");
     return 0;
}


1
2
3
4
5