我是链接列表的新手,我很难用它。我正在尝试显示一些我已经附加到节点的值,但我不断收到链接器消息。这是我到目前为止所拥有的。
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;
}
}
链表::链表() { head = 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 :(得分:4)
您声明了一个LinkList构造函数和一个析构函数,但您没有定义它们:
LinkList::LinkList() : head(NULL)
{
}
LinkList::~LinkList()
{
// delete your memory here...
}