【发布时间】:2019-12-05 06:44:13
【问题描述】:
我即将实现我自己的基本数据结构。这是一类列表。我正在努力修复 insert(int data) 。
想法:每个元素都有一个值和3个指针: pointer1: head: 指向头部单元格 pointer2: current: 指向当前单元格 pointer3: next: 指向相邻元素的结构
每当我们将新元素放入列表时,我已经尝试过 next = &date。 在此处输入代码`
class list{
private:
typedef struct element{
int wert;
element *next;};
element *current;
element *head;
public://constructur.
list()
{head=new element; current=head; head->next=0;}
/*A new element with value is beeing inserted */
void insert (int value){
next= &value;}
};
【问题讨论】:
-
请记住,如果您使用
new进行分配,您将负责对应的delete。 -
在 C++ 中使用
nullptr而不是NULL之类的旧东西,或者更糟的是0。 -
提示:使用
new将value转换为element*。您正在尝试将int*分配给element*。这个链表也缺少放置实际值的地方。 -
您的班级中没有
next成员。您不清楚这个明显的编译错误到底是什么? -
当您得到执行此操作的指令时,您是否也获得了调试它的工具?如果您不采取预防措施,这可能会严重损坏。
标签: c++ list insert compile-time-constant