2011-06-01 59 views
0

我是新來的鏈接列表,我有一個艱難的時間。我試圖顯示一些值,我已經附加到節點,但我不斷收到鏈接錯誤消息。這是我到目前爲止。爲什麼我的鏈接列表代碼導致鏈接錯誤?

LinkList.h 
- 


    #ifndef LINKLIST_H 
    #define LINKLIST_H 

    class LinkList 
    { 
    private: 
     struct ListNode 
     { 
      int value; 
      ListNode *next; 
     }; 

     ListNode *head; 

    public: 
     LinkList(); 
     void insertNode(int); 

     void deleteNode(int); 
     void appendNode(int); 
     void display() const; 

     //~LinkList(); 
    }; 
    #endif 


Impl.cpp 
- 

    #include <iostream> 
    #include "LinkList.h" 
    using namespace std; 

    void LinkList::appendNode(int num) 
    { 
     ListNode * newNode; 
     ListNode * nodePtr; 

     newNode = new ListNode; 
     newNode->value = num; 
     newNode->next = NULL; 

     if(!head) 
     { 
      head = newNode; 
      head->value = num; 
      head->next=NULL; 
     } 
     else 
     { 
      nodePtr = head; 

      while(nodePtr->next!=NULL) 
       nodePtr = nodePtr->next; 
      newNode = new ListNode; 
      newNode->value = num; 
      newNode->next = NULL; 

      nodePtr->next = newNode; 
     } 
    } 

    void LinkList::display() const 
    { 
     ListNode *nodePtr; 
     nodePtr = head; 

     while (nodePtr != NULL) 
     { 
      cout << nodePtr->value << endl; 

      nodePtr = nodePtr->next; 
     } 
    } 

鏈表::鏈表() { 頭= NULL; }

main.cpp 
- 


    #include <iostream> 
    #include "LinkList.h" 

    using namespace std; 

    int main() 
    { 
     LinkList mine; 

     mine.appendNode(6); 
     mine.appendNode(9); 
     mine.appendNode(11); 

     mine.display(); 

     return 0; 
    } 

我修正了一些初步的問題,但是,當它運行,我不知道爲什麼

我不知道問題是什麼程序只是崩潰,任何幫助將不勝讚賞。

+0

請格式化代碼] - [K] – 2011-06-01 08:07:16

+1

請格式化您的文章:它幾乎不可讀。既然你使用的是C++和STL,那麼你有沒有理由不使用std :: list? – stijn 2011-06-01 08:07:17

回答

4

你宣佈一個鏈表構造函數和析構函數,但你沒有定義它們:在[{}]或[Ctrl鍵編輯後,選擇的代碼,請按:

LinkList::LinkList() : head(NULL) 
{ 
} 

LinkList::~LinkList() 
{ 
    // delete your memory here... 
} 
+4

構造函數應該至少可以初始化指針。 – 2011-06-01 08:10:31

+0

初始化指針。 – Blazes 2011-06-01 08:54:23