>>Would it be possible to access data directly using []'s?
Consider two classes, a matrix class and an array class. Use the array class with an overloaded [] operator and use that as a return value for the overloaded matrix [] operator :-)
Code:
template<typename T>
class matrix {
public:
class array {
public:
T& operator[](int index);
const T& operator[](int index) const;
...
};
array operator[](int index);
const array operator(int index) const;
...
};
Then you can access it like this
Code:
matrix<int> a(5,10);
...
cout<< a[i][j] <<endl;