| | | | | next -> |

Insert Iterator Adaptors

    template <class C>
    class PushBackIterator
    {
    public:
      explicit PushBackIterator (C& x) : Cptr(&x) {}
      PushBackIterator <C>& operator = (const typename C::value_type& t)
      {
        Cptr -> PushBack(t);
        return *this;
      }
      PushBackIterator<C>& operator *  ()    {return *this;}
      PushBackIterator<C>& operator ++ ()    {return *this;}
      PushBackIterator<C>& operator ++ (int) {return *this;}
    
    protected:
      C* Cptr_;
    };
    
    // useage:
    
    List < char > L;                            // declare a list
    PushBackIterator < List < char > > Litr(L); // declare a PushBackIterator for L
    // yada dada
    g_copy(V.Begin(), V.End(), Litr);   // inserts entire contents of V to back of L
    

| next -> | Top of Page | 7. Iterators - 13 of 13