是否有任何版本的Delphi警告不平衡的if-else缩进?

时间:2015-10-01 18:45:00

标签: delphi if-statement compiler-warnings

我从

编辑了一些Delphi 6代码
mysql -Nu USER --password=PASSWORD DATABASE -e 'show tables' | \
perl -ne 'BEGIN { print "SET FOREIGN_KEY_CHECKS=0;\n" };
    !/^(ABC|DEF|XYZ)$/ && s/^(.*)/DROP TABLE `\1`;/ && print' | \
mysql -u USER --password=PASSWORD DATABASE

if functionA then 
else procedureB

而不是正确的

if functionA then
  if testC then procedureD
else procedureB

如果编译器警告我连接的if-else并非同样缩进,那么我会在编译时意识到我的错误。请注意,正确的代码采用" else"分支和调用procedureB只有当functionA不是真的时候。错误的代码需要" else"只有当functionA为true且testC为false时才会生效。

即使原件是

if functionA then
  begin
  if testC then procedureD
  end
else procedureB

我可能把它编辑成了错误的版本。

是否有任何版本的Delphi警告if-else缩进不平衡?

1 个答案:

答案 0 :(得分:4)

  

是否有任何版本的Delphi警告if-else缩进不平衡?

没有。

这就是为什么在我的代码库中我从不使用单个语句并始终使用复合语句。

if someBool then begin
  DoStuff;
end else begin
  DoOtherStuff;
end;