1樓:我已經匿名了
3全部#include
using namespace std;
template
class doublelist
node():prev(null),next(null){}};int thesize;
node *head;
node *tail;
public :
doublelist()
~doublelist()
thesize=0;
}int size()
void addfirst(object o)elsehead = newnode;
thesize++;
};/*void addlast();
object removefirst();
object removelast() ;
*/template
friend ostream& operator<< (ostream&o, const doublelist<_t>& list);
};template
ostream& operator<<(ostream& o, const doublelist& list)
return o;
}int main()
{doublelistlist;
list.addfirst(10);
cout<
2樓:匿名使用者
第一個錯誤:你的建構函式就是錯的。head和tail應該是null。
第二個錯誤:你的解構函式現在有什麼用?應該依次呼叫delete current。current=current->next。
第三個錯誤:就是你的addfirst函式。按你的意思應該是加到連結串列的開頭處吧。
應該這麼寫:
node *newnode = new node (obj,temp->pre,temp);
還有一點,雖然沒錯,但是一般不這麼寫吧。那個結構體放在外面,也寫成模版。當然你這樣也不是錯的。
希望對你有幫助
c語言實現的雙向連結串列插入程式,C語言實現的雙向連結串列插入程式
雙向連結串列 include include typedef struct node node node create list int j node head,p1,p2 p2 head node malloc sizeof node head i a 0 head next head prior...
在Java中如何實現雙向連結串列
雙向連結串列 就是有雙向指標,即雙向的鏈域。鏈結點的結構 data next previous 雙向連結串列不必是雙端連結串列 持有對最後一個鏈結點的引用 雙端連結串列插入時是雙向的。有兩條鏈 一條從頭到尾,一條從尾到頭,刪除遍歷時也是雙向的。雙向連結串列 public class doublyli...
求查錯C 連結串列問題
include iostream.h include stdio.h include stdlib.h define error 0 define ok 1 typedef int elemtype typedef int status typedef struct lnodelnode,linkl...