Hi everyone. Getting compile errors with the following code that i can not figure out...:
template <class T>
class X{
class Y{
public:
Y();
};
X();
};
template <class T>
typename X<T>::Y * operator[](X<T> * obj1, int index);
The compile error from mingw is:
test.h:18: error: 'typename X<T>::Y * operator[](X<T> * obj1, int index);' must be a nonstatic member function
Can anyone explain why this doesn't compile and if/how I can get round the problem? Thanks