首页 > Windows开发 > 详细

Windows 已在 数据结构_顺序表.exe 中触发一个断点——new和delete注意事项

时间:2014-05-15 18:00:39      阅读:869      评论:0      收藏:0      [点我收藏+]
实现数据结构的顺序表的类时,输入,改,删,查都可以,但是最后析构函数时持续出错
错误提示“Windows 已在 数据结构_顺序表.exe 中触发一个断点”
int *elem=new intLIST_INIT_SIZE;
    if(!elem)cout<<"overflow"<<endl;
    if(leng>LIST_INIT_SIZE)
        cout<<"error";
    else
    {    length=leng;
        int i=0;
        int *p=elem;
        for (i;i<leng;i++)
        {
            cout<<"input"<<i+1<<"num:";
            cin>>*(p+i);
        }
    }
 
最后析构delete elem总是出错,
原因:int *elem = new int[size];和int *elem = new int(size);是不一样前者是一个数组后者只是一个int型指针,所以你在访问到系统内存的时候会报错,碰巧了16前没有访问到系统内存,
 
 
修改
int *elem=new int [LIST_INIT_SIZE];





Windows 已在 数据结构_顺序表.exe 中触发一个断点——new和delete注意事项,布布扣,bubuko.com

Windows 已在 数据结构_顺序表.exe 中触发一个断点——new和delete注意事项

原文:http://www.cnblogs.com/zhuangwy-cv/p/3729818.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!