乙個封裝的鍊錶模板類

2021-04-12 18:32:07 字數 1110 閱讀 8152

由於工作中經常用到鍊錶,所以自己封裝了個簡單的鍊錶模板類。以便使用

/**    鍊錶模板

*/#pragma once

#define null 0

template class ptrlist

ptrlist(ptrlist &p)

void addnode (t &t);     // 增加結點

void removenode (t &t);  // 移除結點

void removeall  ();      // 移除所有結點

t *  findnode (t &t);    // 查詢結點

t *  getnode();          // 遍歷結點

~ptrlist();

protected:

struct node;

node * pfirst;

};template

void ptrlist::addnode(t &t)

template

t * ptrlist::findnode(t &t)

return null;}/*

*   呼叫者可通過迴圈呼叫此函式以遍歷所有結點。

*  

*/template

t * ptrlist::getnode()

template

void ptrlist::removenode(t &t)

else

}if (q)

}template

void ptrlist::removeall()

}template

ptrlist::~ptrlist()

}使用方法:

ptrlist list, list1;    // 模板例項化

int i = 34, j = 35, k = 36;

list.addnode(i);    // 增加結點

list.addnode(j);

list.addnode(k);

list.removenode(j);    // 移除結點

list1 = list;     // 此句為了後面的遍歷所使用

while (1)

乙個簡單的鍊錶類

include include using namespace std class linklist private node head public 預設建構函式 linklist int n 10 析構函式 linklist while ptr stack.empty 列印鍊錶 void dis...

乙個鍊錶類的實現

乙個鍊錶類的實現 賦值到vc上即可執行除錯。typedef struct lnode lnode,plinklist 類的宣告 class linklist 類的實現 linklist linklist linklist linklist 初始化,分配乙個頭節點。bool linklist init...

乙個簡單的C 的鍊錶實現(使用類模板)

在ubuntu下編譯通過,未在windows下測試。linkedlist.h created on 2013 6 2 author btyh17mxy gmail.com ifndef linkedlist h define linkedlist h include ifndef null defi...