iterator.h

来自「Data Structures with C++附代码」· C头文件 代码 · 共 39 行

H
39
字号
#ifndef ABSTRACT_ITERATOR
#define ABSTRACT_ITERATOR

template <class T>
class Iterator
{
   protected:
      // indicates whether iterator has reached end of list.
      // must be maintained by the derived class
      int iterationComplete;
   
   public:
      // constructor
      Iterator(void);
      
      // required iterator methods
      virtual void Next(void) = 0;
      virtual void Reset(void) = 0;
      
      // data retrieval/modification method
      virtual T& Data(void) = 0;
      
      // test for end of list
      virtual int EndOfList(void) const;
};

// constructor. sets iterationComplete to 0 (False)
template <class T>
Iterator<T>::Iterator(void): iterationComplete(0)
{}

// return the value of iterationComplete.
template <class T>
int Iterator<T>::EndOfList(void) const
{
   return iterationComplete;
}

#endif   // ABSTRACT_ITERATOR

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?