注册 登录
编程论坛 VC++/MFC

new delete 的问题

yiqishen 发布于 2013-11-01 11:10, 407 次点击
typedef struct QNode
{
    CString data;
    struct QNode* next;
}QNode;
typedef struct QList
{
    struct QNode* front;
    struct QNode* end;
}QList;
void InsertQL(QList* QL,CString value)
{
    CString m;
    QNode* p;
    p=new(QNode);
    m=value;
    p->data=m;
    if(QL->front==NULL)
    {
        QL->front=p;
        QL->end=p;
        p->next=NULL;
    }
    else
    {
        p->next=NULL;
        QL->end->next=p;
        QL->end=p;
    }
        delete[] p;
}
为什么delete的时候会出错呢
1 回复
#2
yuccn2013-11-01 15:02
QL->end=p;
,又delete?

那么 QL->end为野指针了
1