一个数据结构的指针为什么删除出错
一个数据结构
typedef struct
{
int aa;
CString bb;
float cc;
}Alarm;
Alarm *am;
am=NULL;
am=new Alarm[100]; //到此没有问题,注意am是全局变量
我在退出Mainfrm::OnClose()时
delete am;
结果老是出错。删除不成功,为什么呢?
问题点数:30、回复次数:3Top
1 楼isdong(有些事情应该忘记)回复于 2002-11-28 10:23:48 得分 10
if(am)
{
delete []am;
am = NULL;
}Top
2 楼finix(*_*)回复于 2002-11-28 10:37:06 得分 10
agree!
am is point to array so you should use delete []amTop
3 楼ruihuahan(飞不起来的笨鸟)回复于 2002-11-28 10:44:55 得分 10
delete []am;
有一个原则,用[]new,就要用[]去delete。
否则,系统不知道你要delete一个数组。Top




