刚刚犯了一个越界的错误:(

 我在一个类中定义了如下两个变量:
 BOOL bhavefinished[2];//问题就在这,后来的初始化越界了!
 BOOL bfirstmove;

初始化时:
bfirstmove = 1;
bhavefinished[0] = 0;
bhavefinished[1] = 0;
bhavefinished[3] = 0;

      问题出现了,很明显(其实要是不注意,也不是很明显了,我这纯属马后炮)这段代码会把我的bfirstmove修改成0,因为前面定义的数组越界了!
      这就是没养成检测是否越界的好习惯导致的错误,或者我明明是知道原来的bhavefinished是要从2修改成3个的,但由于没有坚持只要有万分之一的错误的可能,也要检查一遍的原则而导致的。
      还有我用windiff一比较就找出问题来了,不过我发现UltraEdit的compare功能好像界面更友好,更好用一些,不过F8的快捷键好像没有了.

posted on 2005-07-10 17:11  vcfly  阅读(696)  评论(0编辑  收藏  举报