随笔-86  评论-422  文章-13  trackbacks-0
  2006年5月13日
        题目描述很简单:内存泄露了,现象是看到该程序的内存占用率不断增长,作为一个程序员你怎么解决这个问题?

        我答的不好,回来之后又好好的想了想,其实回答这个问题应该从不同的方面来考虑

        首先分析内存泄露容易发生的情况,《OOP启示录》对这些情况都讲得挺详细的,在类的构造函数与析构函数中没有匹配地调用 new/delete!没有正确地清除嵌套的对象指针!在释放对象数组时,没有使用delete [];指向由指向对象的指针构成的数组不等同于与对象数组。缺少拷贝构造函数,编译器缺省添加的拷贝构造函数不足,缺省的拷贝构造函数采用位拷贝!......用我自己的想法描述就是,每次自己分配一块内存区域的时候,都要想到用完之后要将该内存区释放掉!当然特殊的情形这句话不适用。
       既然知道了内存泄露事件的多发地带,我们可以多在这些地方设置检察机制,相对来说就有一点针对性了!面试官说这样是一种解决办法,可能10000个函数,我们可以把错误范围缩小到200个,然后你还有什么办法继续解决这个问题?

      我基本上是把我暂时能想到的都说了,什么设置断点调试啊,用IDE工具看地址变化。。。不过好像都不能达到面试官满意度。。。
      他说没有这样的IDE工具给你用,接着你怎么解决?
      唉。。。受打击了,事实如此,我对这个不够理解。。。

     之后上网想找找内存泄露相关的资料,搜出来的文章大部分都是林锐高质量C++编程里关于内存的那篇,大感失望,怎么就没有其他更好更深入的文章了呢???

     //昨天在C++博客发了一次,没人回复,郁闷啊,园子里这么多人懂还是不懂?
     大家讨论讨论,我相信这个问题挺具有代表性的,大家讨论出个结果,都弄懂了岂不是更好?
posted @ 2006-05-13 09:58 秋雨飘飞 阅读(1581) 评论(4) 编辑
MSN:: jhtjxj@hotmail.com

Locations of visitors to this page
昵称:秋雨飘飞
园龄:6年7个月
粉丝:0
关注:0
<2006年5月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

搜索

 
 

常用链接

我的标签

随笔分类(109)

随笔档案(88)

文章分类(8)

文章档案(11)

相册

<marquee><font color=red><b>A-我的网络空间</b></font></marquee>

<marquee><font color=red><b>MSN Spaces of my friends </b></font></marquee>

<marquee><font color=red><B>常用网址</B></font></marquee>

<marquee><font color=red><B>论坛</B></font></marquee>

<marquee><font color=red><B>朋友们的BLOG</B></font></marquee>

<marquee><font color=red><B>我的收藏夹</B></font></marquee>

积分与排名

  • 积分 - 153951
  • 排名 - 604

最新评论

阅读排行榜

评论排行榜

推荐排行榜