关于C++ delete 与 delete[]的讨论
来源:互联网 发布:java 反射写法 编辑:程序博客网 时间:2024/05/10 12:08
这篇文章代码取自C++简单链表操作Person * d1, *d2;d1 = head->getNext();head->setNext(p2);while (d1 != NULL) {d2 = d1->getNext();delete d1;d1 = d2;}
d1,d2分别是类对象指针
class Person{public:Person();~Person();void setID(int id);void setName(const char * name);int getID();char * getName() const;void setNext(Person * a);Person * getNext() const;private:int ID;char * Name;Person * next;};
在使用delete循环释放指针的时候发生错误 ,引发一个断点,
之所以引发这个错误的原因是之前reserve 替代的链表是使用数组快捷操作 导致delete d1 出错
而应该改成delete []
用delete [] 代替delete 的时候 ,d2被滞空 。
delete 对应 new
delete [] 对应 new []
不能交替 没有定义交替的方法
阅读全文
0 0
- 关于C++ delete 与 delete[]的讨论
- 关于delete的讨论
- 关于new,delete与malloc,free的讨论
- {c++}delete与delete[]
- 关于delete与delete[]的区别
- [C++] 关于delete和delete[]
- delete与delete[]的区别
- delete与delete[]的区别
- delete与delete[]的区别
- delete与delete[]的区别
- delete 与 delete[] 的区别
- delete与delete[]的区别
- delete与delete [] 的区别
- delete与delete[]的区别
- delete与delete[]的区别
- delete与delete[]的区别
- C语言中delete与delete []的不同
- 关于new与delete
- Enterprise Architect 12 官方中文版介绍
- tcpdump的详细用法
- 2、Python 当前时间加一天、一小时、一分钟
- Java学习日常——运行时类型信息和反射
- md5加密
- 关于C++ delete 与 delete[]的讨论
- python基础实例3:完数问题
- 小迪教程第八天——参数类型注入
- 看书笔记——《Unity3d脚本编程使用C#语言开发跨平台游戏》——U3d游戏脚本中的值类型
- 非静态内部类持有外部类的引用 使用不慎会造成内存溢出
- SpringMVC实现文件下载
- Python 字典删除元素clear、pop、popitem
- 适配器模式
- Nightwatch.js 异步中调用等待执行