【发布时间】:2011-09-17 01:48:28
【问题描述】:
我正在尝试使用 c++ 实现一个简单的链表。我可能在某个地方犯了一个愚蠢的错误。通过这个我想学习 C++ 中的类和指针。 对于代码
#include <iostream>
using namespace std;
class node
{
public:
node* next;
int data;
node(int d);
void append(int d);
};
node::node(int d)
{
data = d;
next = NULL;
}
void node::append(int d)
{
node nw = node(d);
if(next==NULL)
next = &nw;
else
{
node *n = next;
while((*n).next!=NULL)
{
n = (*n).next;
}
(*n).next = &nw;
}
}
我得到 81 作为 1 旁边的节点。
int main()
{
node n = node(1);
n.append(3);
n.append(2);
n.append(81);
n = *(n.next);
cout<< n.data << '\n';
}
请帮我弄清楚我在哪里犯了错误。
【问题讨论】:
标签: c++ class pointers linked-list