标题:new delete 的问题
只看楼主
yiqishen
Rank: 2
等 级:论坛游民
帖 子:7
专家分:17
注 册:2013-10-25
结帖率:50%
 问题点数:0 回复次数:1 
new delete 的问题
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的时候会出错呢
2013-11-01 11:10
yuccn
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:何方
等 级:版主
威 望:167
帖 子:6809
专家分:42393
注 册:2010-12-16
得分:0 
QL->end=p;
,又delete?

那么 QL->end为野指针了

我行我乐
我的博客:
http://blog.yuccn. net
2013-11-01 15:02



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-422875-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.529640 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved