У меня есть код, который выглядит так:
template<class T>
class list
{
public:
class iterator;
};
template<class T>
class list::iterator
{
public:
iterator();
protected:
list* lstptr;
};
list<T>::iterator::iterator()
{
//???
}
Я хочу сделать конструктор из list::iterator
, чтобы iterator::lstptr
указывал на список, из которого он вызывается. I.e.:
list xlst;
xlst::iterator xitr;
//xitr.lstptr = xlst
Как бы я это сделал?
А также, правильно ли я ссылаюсь на свой конструктор итератора, или я должен сделать что-то вроде этого:
template<class T>
class list<T>::iterator
{
public:
list<T>::iterator();
protected:
list* lstptr;
};