什么是内存泄漏?野指针?悬挂指针?空指针异常?

1.Q:什么是内存泄漏?

A:用动态存储分配函数动态开辟的控件,在使用完毕后没有释放,结果导致一直占据该内存单元,直到程序结束,称为内存泄漏。


2.Q:什么是野指针?

A:指指向一个已删除的对象或未申请访问受限内存区域的指针。与空指针不同,野指针无法通过简单地判断是否为NULL避免,而只能通过养成良好的编程习惯尽力减少。

成因:(1)指针变量没有初始化

(2)指针被free/delete后,没置NULL

(3)不要返回指向栈内存的指针或引用,因为栈内存在函数结束时会被释放


3.Q:什么是悬挂指针?

A:指既不为空,也没有指向一个已知的对象的指针。它指向一块没有分配给用户使用的内存。


4.Q:什么是空指针异常?

A:指用NULL指针来调用类中的方法。

你可能感兴趣的:(编程基础)