具体方法定义:
- #include "iterator.h"
- template <class Item>
- ListIterator<Item>::ListIterator(const List<Item>* aList)
- : _courrent(0)
- , _list(aList)
- {
- }
- template <class Item>
- void ListIterator<Item>::First()
- {
- _courrent = 0;
- }
- template <class Item>
- void ListIterator<Item>::Next()
- {
- _courrent ++;
- }
- template <class Item>
- bool ListIterator<Item>::IsDone() const
- {
- return _courrent >= _list->Count();
- }
- template <class Item>
- Item ListIterator<Item>::CurrentItem() const
- {
- return _list->Get(_courrent);
- }
- template <class Item>
- ReverseListIterator<Item>::ReverseListIterator(const List<Item>* aList)
- : _courrent(0)
- , _list(aList)
- {
- }
- template <class Item>
- void ReverseListIterator<Item>::First()
- {
- _courrent = 0;
- }
- template <class Item>
- void ReverseListIterator<Item>::Next()
- {
- _courrent ++;
- }
- template <class Item>
- bool ReverseListIterator<Item>::IsDone() const
- {
- return _courrent >= _list->Count();
- }
- template <class Item>
- Item ReverseListIterator<Item>::CurrentItem() const
- {
- return _list->Get(_courrent);
- }
- int main()
- {
- return 0;
- }
|