现在的位置: 首页 > 综合 > 正文

统计遇到的bug类型

2013年08月12日 ⁄ 综合 ⁄ 共 493字 ⁄ 字号 评论关闭
1. 在while, for循环里,  对于肯定不应该执行下去的代码, 要坚决continue; (今天这个bug就是因为我当初写代码时的软弱, 没有坚决把冗余的数据过滤掉, 结果冗余数据进入系统之后, 造成了莫名其妙的bug, 因此, 对于我们确定的冗余数据, 就要坚决剔除)
原始代码是for循环里
if(cy < 0) {
    cy = 0;
}
结果导致cy = 0, 也就是第一行的数据始终不对, 呵呵, 被cy < 0的数据冲掉了;
改为if(cy <0) {continue;}就一切ok了
2. return使用不当; 以前习惯的写法是
   if(!ok) {
      return;
    }
    觉得这样写很酷
   结果很多次, 发现都是提前return造成的麻烦...因此, 还是尽量简单吧, 不要追求怪异的编程风格了...
3. >, < 与>=, <=
   死在等于号手里无数次了, 很多时候写代码的时候如果大脑稍微不清醒, 就对这种是否包含边界的情况过滤不够, 结果导致基础类库出问题, 后面出现的边界bug一个是难以碰到, 碰到了也很容易被忽视, 往往要重复很多次错误才能重现, 这种bug最要命了!!
    以后遇到这种很难重现的bug时, 就要考虑特殊边界情况了

抱歉!评论已关闭.