C++如何使用模板實現一個List-創新互聯

這篇文章主要介紹了C++如何使用模板實現一個List,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

我們提供的服務有:成都網站建設、網站建設、微信公眾號開發、網站優化、網站認證、沈丘ssl等。為上千家企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的沈丘網站制作公司

C ++使用模板寫的一個List

template<class T> 
class List 
{ 
private: 
  struct Node 
  { 
    T data; 
    Node *next; 
  }; 
  //head 
  Node *head; 
  //size 
  int length; 
 
  //process 
  Node *p; 
 
  //temp 
  Node *q; 
public: 
  List() 
  { 
    head = NULL; 
    length = 0; 
    p = NULL; 
  } 
  void add(T t) 
  { 
    if(head == NULL) 
    { 
      q = new Node(); 
      q->data = t; 
      q->next = NULL; 
      length ++ ; 
      head = q ; 
      p = head; 
    } 
    else 
    { 
      q = new Node(); 
      q->data = t; 
      q->next = NULL; 
      length ++; 
      p -> next = q; 
      p = q; 
    } 
  } 
 
  void remove(int n) 
  { 
    if(n >= length ) 
    { 
      return; 
    } 
    length -- ; 
 
    //刪除頭節點 
    if(n == 0) 
    { 
      q = head ; 
      head = head -> next; 
      delete(q); 
    } 
    else 
    { 
      q = head; 
      for(int i = 0 ; i < n-1 ; i++) 
      { 
        q = q -> next; 
      } 
      Node *t = q ->next; 
      q->next = q->next ->next; 
      delete(t); 
 
    } 
 
    // 
    p = head; 
    if (p != NULL) 
    { 
      while(p->next != NULL) 
      { 
        p = p->next; 
      } 
    } 
 
  } 
 
  int getSize() 
  { 
    return length; 
  } 
 
  int getLength() 
  { 
    return getSize(); 
  } 
 
  T get(int n) 
  { 
    q = head; 
    for (int i = 0 ;i < n ; i++) 
    { 
      q = q->next; 
    } 
    return q->data; 
  } 
 
 
};

調用方式如下

List<Stu>list; 
  Stu stu1; 
  Stu stu2; 
  Stu stu3; 
  stu1.username = "1"; 
  stu2.username = "2"; 
  stu3.username = "3"; 
 
  list.add(stu1); 
  list.remove(0); 
  list.add(stu2); 
  list.add(stu3); 
 
  for (int i = 0 ;i < list.getSize() ; i ++) 
  { 
    cout << list.get(i).username; 
  }

感謝你能夠認真閱讀完這篇文章,希望小編分享的“C++如何使用模板實現一個List”這篇文章對大家有幫助,同時也希望大家多多支持創新互聯建站,關注創新互聯網站建設公司行業資訊頻道,更多相關知識等著你來學習!

另外有需要云服務器可以了解下創新互聯建站m.kartarina.com,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

文章題目:C++如何使用模板實現一個List-創新互聯
標題路徑:http://m.kartarina.com/article10/dicido.html

成都網站建設公司_創新互聯,為您提供關鍵詞優化、虛擬主機、全網營銷推廣、微信小程序網站設計公司外貿建站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站網頁設計
主站蜘蛛池模板: 狠狠躁天天躁中文字幕无码| 精品无码中文视频在线观看| 亚洲AV综合色区无码一区爱AV| 久久人妻少妇嫩草AV无码专区| 亚洲国产精品无码第一区二区三区 | 无码人妻精品中文字幕免费东京热| 2024你懂的网站无码内射| 夫妻免费无码V看片| 精品无码久久久久久尤物| 亚洲国产成人精品无码久久久久久综合| 亚洲AV无码乱码在线观看裸奔 | 精品无码专区亚洲| 人妻无码αv中文字幕久久琪琪布 人妻无码第一区二区三区 | 久久亚洲AV成人无码| 黄A无码片内射无码视频| 无码中文字幕人妻在线一区二区三区 | 精品无码国产污污污免费| 久久人妻内射无码一区三区| 国产精品无码av天天爽| 人妻丰满熟妇AV无码区免| 少妇无码一区二区三区| 无码人妻一区二区三区在线视频 | 亚洲AV无码一区二区一二区| 日韩乱码人妻无码中文字幕久久 | 伊人久久无码中文字幕| 国产精品毛片无码| 亚洲中文字幕无码专区| 国产成人无码精品久久久免费 | 日韩精品无码一区二区三区| 不卡无码人妻一区三区音频| 本道天堂成在人线av无码免费| 日韩中文无码有码免费视频| 狠狠久久精品中文字幕无码| 丰满少妇人妻无码专区| 国产精品爽爽va在线观看无码| 久久人妻无码一区二区| 免费a级毛片无码a∨性按摩| 日产无码1区2区在线观看| 极品粉嫩嫩模大尺度无码视频| 国产午夜无码视频免费网站| 亚洲中文字幕无码爆乳av中文|