亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++ 模擬實現list(迭代器)實現代碼

2020-01-26 14:07:49
字體:
來源:轉載
供稿:網友

C++ 模擬實現list(迭代器)

實現代碼:

#pragma once; #include <assert.h> #include<iostream> #include <assert.h> using namespace std; template<class T> struct __ListNode {    T _data;    __ListNode<T>* _next;    __ListNode<T>* _prev;    __ListNode(const T& x)      :_data(x)      ,_next(NULL)      ,_prev(NULL)    {    } }; template <class T,class Ref,class Ptr > struct __ListIterator {   typedef __ListNode<T>  Node;   typedef __ListIterator<T,Ref,Ptr> Self; __ListIterator(Node* node)       :_node(node)   {   }   Ref operator*()   {     return _node->_data;   }   Ptr operator->()   {     return &(_node->_data)   }   Self& operator++()   {     _node=_node->_next;     return *this;   }   Self& operator--()   {     _node=_node->_prev;     return *this;   }   Self operator++(int)   {     Self tmp=_node;     _node=_node->_next;     //return tmp;     return Self(tmp)     }   Self operator--(int)   {       Self tmp=(*this);     _node=_node->_prev;     return tmp;   }   bool operator!=(const Self& s) const   {    return this->_node!=s._node;   }   bool operator==(const Self& s) const   {     return this->_node==s._node;   }   Node* _node; }; template<class T> struct List {   typedef __ListNode<T> Node; public:   typedef __ListIterator<T,T&,T*> Iterator;   typedef __ListIterator<T,const T&,const T*> ConstIterator;   Node* GetNode(const T& x)   {     return new Node(x);   }   List()   {     _head=GetNode(T());     _head->_next=_head;     _head->_prev=_head;   }   Iterator Begin()   {    return Iterator(_head->_next);   }   Iterator End()   {    return Iterator(_head);   }   ConstIterator Begin() const   {     return ConstIterator(_head->_next);   }   ConstIterator End() const   {     return ConstIterator(_head);   }       void PushBack(const T& x)   {    /* Node* _tail=_head->_prev;     Node* tmp=GetNode(x);     _tail->_next=tmp;     tmp->_prev=_tail;     tmp->_next=_head;     _head->_prev=tmp;*/     Insert(End(),x);   }  void PopBack()  {    /* assert(_head->_prev );    Node* tail=_head->_prev;    Node* prev=tail->_prev;    Node* next=tail->_next;    prev->_next=next;    next->_prev=prev;    delete tail;*/    Erase(--End());  }  void PushFront(const T& x)  {   /*assert(_head)    Node* tmp=GetNode(x);    Node* next=_head->_next;     _head->_next=tmp;    tmp->_prev=_head;     tmp->_next=next;     next->_prev=tmp;*/    Insert(Begin(),x);  }  void PopFront()  {    /*assert(_head->_next);    Node* tmp=_head->_next;    Node* next=tmp->_next;     _head->_next= next;    next->_prev=_head;    delete tmp;*/      Erase(Begin());  }  Iterator Insert(Iterator pos, const T& x)  {    assert(pos._node);    Node* tmp=GetNode(x);    Node* cur=pos._node;    Node* prev=cur->_prev;         prev->_next=tmp;    tmp->_prev=prev;    tmp->_next=cur;    cur->_prev=tmp;    return tmp;  }  Iterator Erase(Iterator pos) { assert(pos._node && pos._node!=NULL); Node* tmp=pos._node; Node* next=tmp->_next; Node* prev=tmp->_prev;   next->_prev=prev; prev->_next=next;  delete tmp; return Iterator(next); }   protected:   Node* _head; }; void PrintList(const List<int>& l) {   List<int>::ConstIterator It=l.Begin();   while(It!=l.End())   {      cout<<*It<<" ";     ++It;   }   cout<<endl;}  void TestList2() {   List<int> l2;      l2.PushBack(1);    l2.PushBack(2);   l2.PushBack(3);   l2.PushBack(4);   l2.PopBack();    l2.PopBack();     l2.PopBack();     l2.PopBack();      l2.PopBack();    PrintList(l2); } void TestList3() {   List<int> l3;   l3.PushFront(1);   l3.PushFront(2);   l3.PushFront(3);   l3.PushFront(4);   l3.PopFront();   l3.PopFront();   l3.PopFront();   PrintList(l3);   } 
#include "List.h"  int main() {   //TestList1();    //TestList2();    TestList3();    return 0; } 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久中文字幕在线视频| 超碰精品一区二区三区乱码| 久久久国产一区| 亚洲成人久久一区| 久久全国免费视频| 亚洲第一精品夜夜躁人人爽| 国产精品夜色7777狼人| 97精品久久久中文字幕免费| 亚洲国产精品久久久久秋霞不卡| 久久精品一本久久99精品| 欧美成人在线网站| 欧美另类极品videosbestfree| 国产综合福利在线| 欧美在线观看一区二区三区| 亚洲色图激情小说| 亚洲激情视频网| 午夜精品一区二区三区在线视频| 国产91色在线播放| 7777kkkk成人观看| 久久精品亚洲精品| 国产精品啪视频| 少妇激情综合网| 狠狠爱在线视频一区| 日韩视频免费中文字幕| 国产欧美亚洲视频| 精品在线欧美视频| 亚洲欧美www| 亚洲第一免费播放区| 欧美性受xxxx黑人猛交| 亚洲理论在线a中文字幕| 青青a在线精品免费观看| 在线观看免费高清视频97| 91亚洲国产精品| 亚洲国产精品悠悠久久琪琪| 搡老女人一区二区三区视频tv| 亚洲xxx自由成熟| 色悠悠久久88| 欧美大片欧美激情性色a∨久久| 欧美成人精品在线视频| 欧美最猛性xxxxx亚洲精品| 91国内产香蕉| 欧美成人午夜激情在线| 亚洲欧美日韩在线高清直播| 欧美精品激情视频| 欧美性生交xxxxx久久久| 亚洲韩国青草视频| 久久九九精品99国产精品| 国产日韩欧美在线视频观看| 国产精品久久久久77777| 亚洲国产另类 国产精品国产免费| 操日韩av在线电影| 成人国产亚洲精品a区天堂华泰| 亚洲网址你懂得| 国产精品av免费在线观看| 国产欧美日韩综合精品| 欧美最猛性xxxxx免费| 国产精品第七影院| 成人av在线网址| 成人精品一区二区三区电影免费| 久久久国产在线视频| 国内成人精品视频| 国产伦精品一区二区三区精品视频| 亚洲欧美日韩天堂一区二区| 日韩毛片中文字幕| 69av视频在线播放| 精品无人国产偷自产在线| 国产在线拍揄自揄视频不卡99| 久久久久久久久国产精品| 欧美成年人视频| 97久久超碰福利国产精品…| 日本精品免费一区二区三区| 国产精品美女www| 亚洲色图激情小说| 欧洲精品久久久| 91久久久在线| 日韩欧美国产成人| 国产精品色婷婷视频| 在线成人一区二区| 国产成人一区二区三区| 欧美精品在线视频观看| 岛国av一区二区三区| 日韩欧美国产免费播放| 欧美大成色www永久网站婷| 久久久久久噜噜噜久久久精品| 中文字幕在线日韩| 国产精品欧美日韩久久| 欧美日韩在线视频一区二区| 国产一区二区激情| 亚洲区在线播放| 国产精品91久久久| 亚洲一区二区在线播放| 亚洲黄一区二区| 成人亚洲欧美一区二区三区| 97婷婷涩涩精品一区| 精品激情国产视频| 欧美精品在线看| 欧美激情视频在线免费观看 欧美视频免费一| 欧美激情一区二区三区成人| 欧美成人精品三级在线观看| 在线看片第一页欧美| 亚洲社区在线观看| 欧美激情精品久久久久久黑人| 国产成人精品在线| 亚洲图片欧美午夜| 最近的2019中文字幕免费一页| 久久久久久久影视| 性欧美暴力猛交69hd| 亚洲精品美女在线观看播放| 91在线观看免费| 狠狠躁夜夜躁人人躁婷婷91| 日本欧美精品在线| 国产精品一区二区三区在线播放| 国产欧美日韩高清| 97成人精品区在线播放| 亚洲精品久久久久中文字幕欢迎你| 欧美性理论片在线观看片免费| 久久影院免费观看| 97色在线视频| 亚洲人高潮女人毛茸茸| 国产日产久久高清欧美一区| 亚洲社区在线观看| 人人做人人澡人人爽欧美| 日韩在线观看网址| 日韩经典中文字幕在线观看| 亚洲欧美中文日韩在线v日本| 亚洲成av人片在线观看香蕉| 97久久精品国产| 91在线观看免费网站| 91探花福利精品国产自产在线| 久久九九有精品国产23| 国产精品对白刺激| www日韩中文字幕在线看| 午夜精品99久久免费| 国产一区二区三区视频免费| 国产97在线视频| 国产这里只有精品| 国产欧美日韩专区发布| 国产日韩欧美91| 国产精品主播视频| 国产精品男人的天堂| 91av福利视频| 精品久久久久久久久久ntr影视| 国产精品xxxxx| 亚洲成人久久电影| 精品久久久久久亚洲精品| 亚洲乱码一区av黑人高潮| 日韩欧美亚洲范冰冰与中字| 日韩av在线免费看| 国产有码一区二区| 欧美日韩国产黄| 日本久久久a级免费| 日韩二区三区在线| 国产在线精品一区免费香蕉| 国产精品视频xxx| 69av视频在线播放| 亚洲日本成人网| 国产成人精品免高潮在线观看| 日本精品在线视频| 欧美成人免费一级人片100| 欧美xxxx18国产| 亚洲精品成人久久| 91香蕉国产在线观看| 久久久久成人网| 亚洲自拍偷拍色片视频|