内存陷阱 驯服C 中的野指针.pdfVIP

  • 2
  • 0
  • 约2.1千字
  • 约 3页
  • 2018-11-26 发布于河南
  • 举报
内存陷阱 驯服C 中的野指针

内存陷阱 驯服C++中的野指针 什么是野指针? 一个母亲有两个小孩(两个指针),一个在厨房,一个在卧室,(属于不同的代码块,其 生存期不同)母亲让在厨房的小孩带一块蛋糕(指针指向的对象)给在卧室的小孩,这样在卧 室的孩子才肯写作业。但这个在厨房的小孩比较淘气,他在走出厨房时自己将蛋糕吃了,没 能带出来。而在卧室的没有吃到蛋糕,所以不肯完成他的作业。结果母亲却不知道卧室的孩 子没有吃到蛋糕,还以为作业完了。结果第二天她就被老师召唤到办公室了。事情麻烦了。 这样,那个在卧室的孩子就是野指针了,因为他没有得到应得的蛋糕,不能完成母亲交 给他的作业。 这就是c中所讲的野指针。上面的小剧本不过演示了一种最基本的野指针的形成过程。 更容易出现的情形是coder在编码时,大意之下使用了已经free过的指针。 对于年轻点的经验欠缺的coder来说是比较容易犯的错误,经验老到的程序员或者慎重 采取成对编程的形式避免这种失误,或者使用引用计数器防止形成野指针。 总之,在c中,野指针也许性子野,但是控制起来也是有章可循。然而事情在c++中出 现了变化。 coder们面临更大的麻烦了。c++程序员无可避免的要写很多这样那样的类。谁让c++ 是面向对象的呢? 我们在写类的时候难免要用new给类的数据成员分配内存。这本来

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档