标签:没有 delete targe 指针 ref 避免 结束 mod 删除
delete操作:
我们在删除一个指针之后,编译器只会释放该指针所指向的内存空间,而不会删除这个指针本身。
1.假如你不去释放,那么该区域的内存始终不能被其他数据所使用。
2.指向该内存的指针是个局部变量,当定义给指针的函数结束并返回时,指针也就消失了,那么就再也找不到该块的内存区域。
假如指向该内存区域的指针自动消失了,计算机就再也找不到该区域的内存了,就好像丢了这块内存一样,这
种情况称为“内存泄漏”。
这种情况直到程序结束该区域的内存才能恢复使用。
内存泄漏:(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。
野指针:指向被释放的或者访问受限内存的指针。(感觉就是不正常的指针)
造成野指针的原因:
https://blog.csdn.net/u011301123/article/details/9293297
编译器默认将释放掉的内存空间回收然后分配给新开辟的空间
标签:没有 delete targe 指针 ref 避免 结束 mod 删除
原文地址:https://www.cnblogs.com/Stephen-Qin/p/11605348.html