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

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

C++利用靜態成員或類模板構建鏈表的方法講解

2020-05-23 14:06:07
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了C++利用靜態成員或類模板構建鏈表的方法講解,鏈表是基礎的數據結構,而在C++中構件單鏈表還是稍顯復雜,需要的朋友可以參考下
 

直接上代碼了,說明看注釋就可以:

利用靜態成員構建鏈表

#include <IOSTREAM.H>  class Node { public:   Node(int val, Node* next):val(val),next(next){}   //~Node(){cout<<"del "<<val<<endl;}   static void showAll();//打印全部節點的值   static void insertHead(int);//頭插   static void insertTail(int);//尾插   static void delHead();//刪頭   static void delTail();//刪尾   static void clear();//清空 protected:   int val;   Node *next;   static Node *head; private: };  Node* Node::head = 0;  void Node::showAll(){//打印全部節點的值   Node *p = head;   while (p)   {     cout<<p->val<<" ";     p = p->next;   }   cout<<endl; }  void Node::insertHead(int val){//頭插   Node *p = new Node(val, head);   head = p; }  void Node::insertTail(int val){//尾插   Node *p = new Node(val, 0);   if (!head)   {     head = p;     return;   }   Node *q = head;   while (q->next)   {     q = q->next;   }   q->next = p; }  void Node::delHead(){//刪頭   Node *p = head;   if (head)   {     head = head->next;     delete p;   } }  void Node::delTail(){//刪尾   if (!head)   {     return;   }   if (!(head->next))   {     delete(head);     head = NULL;     return;   }   Node *p = head;   while (p->next->next)   {     p = p->next;   }   delete(p->next);   p->next = NULL; }  void Node::clear(){//清空   Node *p = head;   Node *q = 0;   head = 0;   while (p)   {     q = p;     p = p->next;     delete q;   } }  void main(){   Node::delHead();   Node::delTail();   Node::insertTail(2);   Node::delTail();   for (int i = 0; i < 10; i++)   {     Node::insertTail(i + 1);   }   Node::delTail();   Node::showAll(); } 

利用類模板構建鏈表
這有點類似于list<>:

#include <iostream> #include <string> using namespace std;  template<class T> class Node//創建一個類模板,一個可以放入任何類型節點的鏈表 { public:   Node(T val, Node* next):val(val),next(next){}   static void showAll();//打印全部節點的值   static void insertHead(T);//頭插   static void insertTail(T);//尾插   static void delHead();//刪頭   static void delTail();//刪尾   static void clear();//清空 protected:   T val;   Node *next;   static Node *head; private: };  template<class T> Node<T>* Node<T>::head = 0;  template<class T> void Node<T>::showAll(){//打印全部節點的值   Node *p = head;   while (p)   {     cout<<p->val<<" ";     p = p->next;   }   cout<<endl; }  template<class T> void Node<T>::insertHead(T val){//頭插   Node *p = new Node(val, head);   head = p; }  template<class T> void Node<T>::insertTail(T val){//尾插   Node *p = new Node(val, 0);   if (!head)   {     head = p;     return;   }   Node *q = head;   while (q->next)   {     q = q->next;   }   q->next = p; }  template<class T> void Node<T>::delHead(){//刪頭   Node *p = head;   if (head)   {     head = head->next;     delete p;   } }  template<class T> void Node<T>::delTail(){//刪尾   if (!head)   {     return;   }   if (!(head->next))   {     delete(head);     head = NULL;     return;   }   Node *p = head;   while (p->next->next)   {     p = p->next;   }   delete(p->next);   p->next = NULL; }  template<class T> void Node<T>::clear(){//清空   Node *p = head;   Node *q = 0;   head = 0;   while (p)   {     q = p;     p = p->next;     delete q;   } }  class Student//創建一個自定義的學生類 { public:   Student(string name, int age,char sex):name(name), age(age), sex(sex){}   void showInfo(){     cout<<"姓名:"<<name<<" 年齡:"<<age<<" 性別:"<<sex<<endl;   } protected:   string name;   int age;   char sex; private: };  void Node<Student>::showAll(){//學生類節點和其他基本數據類型不同,不能直接用<<輸出,所以重載showAll()   Node *p = head;   while (p)   {     p->val.showInfo();     p = p->next;   } }  void main(){   for (int i = 1; i < 10; i++)   {     Node<int>::insertTail(i);//這時Node<int>稱為一個用類模板生成的模板類     Node<float>::insertTail(i / 10.0f);     Node<double>::insertTail(i / 10.00);     Node<Student>::insertTail(Student("stu", i, 'F'));   }   Node<int>::showAll();   Node<float>::showAll();   Node<double>::showAll();   Node<Student>::showAll(); } 

C++,靜態成員,類模板,鏈表



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕精品久久| 日韩视频免费大全中文字幕| 亚洲人av在线影院| 深夜福利91大全| 国内精品视频一区| 亚洲va欧美va国产综合久久| 国产精品第1页| 欧美性xxxx在线播放| 久久夜色精品国产亚洲aⅴ| 国产欧美久久久久久| 亚洲性日韩精品一区二区| 国产精品免费电影| 日韩黄色av网站| 久久精品视频免费播放| 欧美性生交xxxxx久久久| 91免费版网站入口| 深夜福利日韩在线看| 久久全球大尺度高清视频| 国产精品成av人在线视午夜片| 久久不射热爱视频精品| 国产精彩精品视频| 国产91露脸中文字幕在线| 国产精品久久久久av免费| 国产精品成人aaaaa网站| 欧美激情啊啊啊| 亚洲色图欧美制服丝袜另类第一页| 黄色成人在线免费| 国产在线视频不卡| 欧美诱惑福利视频| 亚洲天堂影视av| 亚洲va欧美va在线观看| 成人动漫网站在线观看| 亚洲国产欧美一区二区三区同亚洲| 久久久精品影院| 亚洲第一页在线| 国产97在线亚洲| 久久精品亚洲一区| 日韩女在线观看| 98视频在线噜噜噜国产| 欧美激情视频播放| 国产精品久久久久久影视| 欧美激情在线一区| 欧美性xxxx极品高清hd直播| 一夜七次郎国产精品亚洲| 日韩精品在线观看一区二区| 欧美成人精品在线视频| 成人在线一区二区| 日韩av网址在线| 揄拍成人国产精品视频| 欧美视频在线观看免费网址| 久久色在线播放| 91精品久久久久久久久久久| 国产91av在线| 一区二区三区 在线观看视| 亚洲精品在线观看www| 欧美日本在线视频中文字字幕| 欧美成人免费在线视频| 精品人伦一区二区三区蜜桃免费| 日韩成人激情视频| 欧美精品第一页在线播放| 色综合久久精品亚洲国产| 亚洲欧美一区二区三区四区| 97不卡在线视频| 成人激情综合网| 国产精品亚洲片夜色在线| 国产丝袜精品视频| 国内精品400部情侣激情| 日韩免费精品视频| 亚洲精品电影网在线观看| 中文字幕亚洲第一| 久久91亚洲精品中文字幕奶水| 青青青国产精品一区二区| 欧美亚洲国产视频| 久久久久久久亚洲精品| 亚洲精品在线不卡| 亚洲黄页视频免费观看| 91精品国产综合久久久久久久久| 亚洲欧美在线一区| 97av视频在线| 国产精品激情av在线播放| 91av视频在线| 亚洲欧美日韩一区二区在线| 色偷偷av一区二区三区| 亚洲free性xxxx护士白浆| 欧美一区二区三区……| 久久精品99久久久香蕉| 成人黄色午夜影院| 中文字幕在线成人| 91视频国产高清| 欧美一级视频免费在线观看| 亚洲欧美一区二区三区在线| 亚洲最大成人免费视频| 久久影视电视剧凤归四时歌| 欧美亚洲在线观看| 日韩成人高清在线| 亚洲va欧美va国产综合剧情| 亚洲美女中文字幕| 国语对白做受69| 91亚洲精品久久久久久久久久久久| 久久久久久中文| 日韩有码在线观看| 美女精品视频一区| 超碰97人人做人人爱少妇| 久久影视三级福利片| 日韩欧美精品免费在线| 亚洲综合在线做性| 亚洲精品二三区| 国产午夜精品美女视频明星a级| 成人精品视频99在线观看免费| 91日韩在线视频| 亚洲人成亚洲人成在线观看| 欧美午夜片欧美片在线观看| 国产精品三级美女白浆呻吟| 日韩天堂在线视频| 亚洲一区二区三区sesese| 在线视频中文亚洲| 国产精品视频精品视频| 欧美疯狂做受xxxx高潮| 中文字幕一区二区精品| 91香蕉亚洲精品| 国产精品视频午夜| 日韩女优人人人人射在线视频| 91视频免费在线| 欧美一级免费看| 亚洲精品免费一区二区三区| 日韩av片免费在线观看| 国产激情综合五月久久| 91精品视频免费| 伊人伊成久久人综合网站| 亚洲最新av在线网站| 国产91九色视频| 日本三级韩国三级久久| 原创国产精品91| 日韩高清人体午夜| 日韩av最新在线观看| 福利一区福利二区微拍刺激| 欧美激情免费观看| 精品在线欧美视频| 亚洲欧美一区二区激情| 久久精品久久久久久国产 免费| 亚洲国产又黄又爽女人高潮的| 欧美黑人一级爽快片淫片高清| 国产精品第一页在线| 欧美成人sm免费视频| 欧美日韩日本国产| 亚洲精品色婷婷福利天堂| 日本精品一区二区三区在线| 91chinesevideo永久地址| 亚洲女成人图区| 日本中文字幕成人| 爱福利视频一区| 日韩精品视频在线观看网址| 成人av资源在线播放| 国产精品成人在线| 日韩国产精品亚洲а∨天堂免| 亚洲18私人小影院| 欧美日韩在线视频首页| 久久久久成人精品| 日韩精品在线视频| 欧美国产日韩免费| 大量国产精品视频| 欧美大片网站在线观看| 另类少妇人与禽zozz0性伦| 色婷婷亚洲mv天堂mv在影片|