Я пишу шаблонный класс для двоичного дерева:
template <class T>
class Tree {
public:
Tree():head_(NULL),size_(0){}
~Tree();
bool isEmpty()const {return size_ == 0;};
bool insert(const T& ele);
bool remove(const T& ele);
size_t size() {return size_;}
public:
class inorder_iterator
{
inorder_iterator& operator++ ();
private:
Node<T>* cur_;
};
}
Какое определение для оператора ++? (Я не могу скомпилировать, используя следующее)
template <class T>
Tree<T>::inorder_iterator&
Tree<T>::inorder_iterator::operator++ ()
{
//....
}