C++ 添加带有链接列表的中间节点

C++ 添加带有链接列表的中间节点,c++,linked-list,C++,Linked List,你好,我正在创建一个链表程序。我在下面看到一个错误,在“temp;”之前是“预期的类型说明符”。有什么想法、提示、线索吗?谢谢 void add_middle_node(){ node *current; current = start_ptr; if(current->nxt == NULL){ add_node(); }else{ node *temp = new temp; // ERROR HERE get_

你好,我正在创建一个链表程序。我在下面看到一个错误,在“temp;”之前是“预期的类型说明符”。有什么想法、提示、线索吗?谢谢

void add_middle_node(){

node *current;
current = start_ptr;

    if(current->nxt == NULL){

        add_node();
    }else{

        node *temp = new temp; // ERROR HERE

        get_details(temp);

        temp->nxt = current->nxt;

        current->nxt = temp;

        delete temp;

    }

};

new
运算符需要一个类型,而您给它一个变量。将其更改为
new node

我对代码体也有点困惑,它将
current->next
指定为指向temp,然后删除
temp
。当然,这也是不正确的,因为
current->next
指向现在删除的位置,即它是一个悬空指针。另外,赋值之前的
current->next
指向某个丢失(未删除)的非空节点,从而导致内存泄漏。所以是的,
temp
不应该在这里删除。是的。这是内存泄漏。插入的值始终为18,并创建一个无限循环。指针搞乱了。非常感谢。我不知道为什么我把删除临时文件放在那里。