a = (a + 1)

天下v大乱 2016-01-25 11:37:02
看到一个写法

var
a: Integer;
begin
a := 0;
if a = (a + 1) then
begin
{ do XXXXX}
end;
end;

求大神指点,什么情况下,怎么个用法,才会条件成立!
...全文
331 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzn0521 2016-01-29
  • 打赏
  • 举报
回复
看不出来这么写的目的,逻辑上不会运行。 但偶尔不定什么问题,可能导致了执行。以前也遇到过类似情况,怎么也找不到原因,但是执行了。后来delphi卸载了重装,就不再执行了。
lyhoo163 2016-01-25
  • 打赏
  • 举报
回复
这条件永不成立if a = (a + 1) then,下面的代码不再执行。 这好也许是雷人,注释语句,或是测试时修改一下,再运行的代码。
jjpweb 2016-01-25
  • 打赏
  • 举报
回复
永远不执行呗 if false then showmessage('ok'); 具体什么目的不清楚
天下v大乱 2016-01-25
  • 打赏
  • 举报
回复
引用 3 楼 suiyunonghen 的回复:
应该是测试语句。鉴定完毕
感觉应该有一定的用处。 看似和CPU有关。
天下v大乱 2016-01-25
  • 打赏
  • 举报
回复
class procedure RemoveWarnings; inline; static; class procedure TAnyValue.RemoveWarnings; var Dummy: Integer; Value: TAnyValue; begin Dummy := 0; if Dummy = (Dummy + 1) then begin {$IFNDEF CPUX64} {$IFNDEF AnyValue_HookingOff} Value.Padding[0] := 0; {$ENDIF} {$ENDIF} Value := Value.GetAsArrayItem(''); Value.SetAsArrayItem('', TAnyValue.Null); end; end; 我觉得可能是没用的,这个是原本的代码。
不得闲 2016-01-25
  • 打赏
  • 举报
回复
应该是测试语句。鉴定完毕

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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