一些基础知识的漏洞

在一个class类里面,关于delete的问题

class linkedlist{
private:
    node *head;
    node *tail;
    node *previous;
public:
    linkedlist(){
        head=NULL;
        tail=NULL;
        previous=NULL;
    }
    void createnode(int val){
        node *temp=new node;
        temp->value=val;
        temp->next=NULL;
        if(head==NULL){
            head=temp;
            tail=temp;
            delete temp;//问题就出在这个delete上,delete删除的不是temp这个名字,而是temp原来所指向的内存空间里面的数值都被清空了,所以这个temp不应该使用delete
        }

猜你喜欢

转载自blog.csdn.net/kking_edc/article/details/81771399