【发布时间】:2017-05-21 21:52:47
【问题描述】:
这个简单的链表有什么问题?
// linked_lst1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
using namespace std;
class Node
{
int data;
Node* next;
friend class LinkedList;
};
class LinkedList
{
private:
Node* s;
public:
LinkedList() : s(NULL)
{};
void add(int x)
{
Node* s1 = new Node();
s1 = s;
if (!s1)
{
s->data = x;
return;
}
while (s1->next)
s1 = s1->next;
Node* temp = new Node;
temp->data = x;
s1->next = temp;
temp->next = NULL;
}
void showList()
{
Node* s1 = new Node;
s1 = s;
while (s1)
{
cout << s1->data << " ";
s1 = s1->next;
}
}
};
这里是主要部分:
int main()
{
LinkedList list;
list.add(3);
list.showList();
return 0;
}
我认为s->data = x; 中存在分配问题,但我不知道如何解决...
请注意,这只是一个教育性的简单代码,我不想使用模板等。
我想,我搞错了。
【问题讨论】:
标签: c++ linked-list nullptr