三种内存问题与三种指针

1.内存

(1)内存泄露

Memory Leak

即动态申请的内存没有返还给系统。

(2)内存溢出

Out Of Memory OOM

即无法向系统申请到想要的内存。

内存如果不断泄露,最终会导致内存溢出。

(3)内存越界

Heap Corruption

访问超过申请内存的区域。


2.指针

(1)野指针

Wild Pointer

未经初始化的指针,一般的指针没有初始化访问,会访问到一个随机的位置。

(2)空悬指针

Dangling Pointer

指向一段已经释放的内存。

(3)空指针

Null Pointer

即指向nullptr的指针,访问空指针会产生异常导致程序终止。


注意:

①空指针比野指针和空悬指针更好,因为野指针和空悬指针很可能不经意改变了,其他程序的值,导致程序错误。

访问空指针会使得本程序直接终止,避免其他错误,同时也更容易检测。

②智能指针,在未初始化时,值是nullptr,从这一点上来说,它也是更安全的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值