Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2336735
  • 博文数量: 527
  • 博客积分: 10343
  • 博客等级: 上将
  • 技术积分: 5565
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-26 23:05
文章分类

全部博文(527)

文章存档

2014年(4)

2012年(13)

2011年(19)

2010年(91)

2009年(136)

2008年(142)

2007年(80)

2006年(29)

2005年(13)

我的朋友

分类: C/C++

2010-10-21 08:54:09

前一天写代码, 第二天再review, 会更容易发现问题. 老生常谈, 内存泄漏. 有malloc没有对应的free.

这个问题显见的原因是忘了, 不那么容易发现的原因是在malloc和free之间, 在某个分支下return了, 造成只在特定情形下才泄漏. 更难发现的情况是: malloc和free的责任不在一个函数内,  这种情况根本就是不好的接口设计的典范, 应该完全避免.

如果能用C++, 避免这个问题的另一办法就是使用string, 即使是二进制数据, string也能对付, 是的, 小心使用, string可以管理包括0在内的二进制数据.
阅读(1206) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~