今天周一,接着做上周没完成的一个模块,是根据玩家动作画指示箭头, 按照思路做好后,总是出现一些莫名奇妙的找不到资源文件的错误, CALL.., 因为找不到资源,我一致以为是我在绘图以及资源调用上出错了, 一次次的调试,没发现什么错误, 最后.... ,我一步步的调试, 总算找到根源, 我把CASE语句的语法搞错了, 得不到我要的字符..., 下面是我原来的做法
- LDistance:= Ord(ASecPlayer) - Ord(AFirstPlaye);
- case LDistance of
- -1 or 3 : Result := '<';
- 1 or -3 : Result := '>';
- 2 or -2 : Result := '^';
- else Result := '@';
- end;
唉, 发现错误了没, 郁闷死我了, 这个错误导致了1天的工期... ,正确用法如下
- LDistance:= Ord(ASecPlayer) - Ord(AFirstPlaye);
- case LDistance of
- -1,3 : Result := '<';
- 1,-3 : Result := '>';
- 2,-2 : Result := '^';
- else Result := '@';
- end;
要用逗号来分割条件, 而不是用or中.....,
另外,还有一次我的不细心,导致的一个问题,就是在给数组赋值用FillChar时, 我用Length来标识Size, 唉, 应该用Sizeof ,
这些错误, 真是愚昧... ,望大家引以为戒....