你们有过“幽灵代码”的体验吗?

秋天之落叶 2018-05-12 10:35:44
很多次了,不知道如何形容,一样的代码,你上午无论如何调整,就是得不出正确的结果,各种逻辑都对,就是结果不正确。
一气之下出去吃饭,下午回来懒洋洋的测试一下,我靠,发现同样的代码,测试结果竟然正确无误,然后各种替换,上午各种不行的方式,下午统统不是问题,都能正常运行了。
百思不得其解,确实有这样的情况,我定名为“幽灵代码”,大家有这种体验吗?
这是昨天的,不设变量,直接使用<>比较字符串不行,使用函数比较字符串可以得到正确结果,各种不行,今天拷回家一运行,全行了。然后去掉变量,去掉函数直接比较字符串,各种试,统统没有问题,晕掉:
procedure TForm1.xgda(Sender: TObject);
var
s1, s2, s3, s4: string;
begin
s1 := Trim(Edit10.Text);
s2 := Trim(dm1.ADO考试.FieldByName('答案').AsString);
s3 := Trim(Memo15.Text);
s4 := Trim(dm1.ADO考试.FieldByName('要点').AsString);
if (CompareStr(s1, s2) <> 0) or (CompareStr(s3, s4) <> 0) then
begin
......
end;
end;
这种情况一般出现在if then语句的条件判断中。
...全文
1788 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaocongzhi 2018-05-17
  • 打赏
  • 举报
回复
代码修改了,记得Build一下,我经常遇到compile没有把修改的部分包含进去
  • 打赏
  • 举报
回复
应该是系统缓存机制造成的,先save all,再build就好了。
BillHu233 2018-05-14
  • 打赏
  • 举报
回复
POS机办理有没有需要了解一下的。
BillHu233 2018-05-14
  • 打赏
  • 举报
回复
事出总有因. 一般来说运行有问题百分之8。90都是哪里写错了, 一小部分原因代码百分之百相似还是有问题, 有可能你的IDE需要重启一下. 也有可能电脑重启一下就好了
  • 打赏
  • 举报
回复
事出总有因。

828

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧