if a=b then
SomeOldStatement
else
AnotherStatement;
должно быть записано как
if a=b then
begin
SomeOldStatement;
end
else
begin
AnotherStatement;
end;
теперь вы можете комментировать SomeOldStatement; с именно тем эффектом, который вам нужен, отладчик более точно следит за потоком кода И вы избегаете странных побочных эффектов в коде, подобном
if a=b then
if b=c then
statement1
else
if c=d then
statement2;
else
statement2
else
statement3;
облажай свои отступы, неправильно введи точку с запятой, документируй строку для тестирования и святое дерьмо, все станет ужасно быстро.
серьезно, попробуйте выяснить, является ли код, который я только что написал, действительным даже без прохода компилятора.
Теперь, угадайте, что происходит с этим:
if a=b then
if b=c then
statement1
else
if c=d then
statement2;
// else
statement2
else
statement3;
также:
if a=b then
statement1;
statement2;
часто может делать странные вещи, и даже странные вещи, когда вы делаете
if a=b then
// statement1;
statement2;
серьезно - просто привыкните ВСЕГДА иметь начальные концы во всей вашей логике - это облегчает отслеживание вашего кода, избегает побочных эффектов, избегает умственных ошибок разбора, ошибок разбора кода и комментирования побочных эффектов.
Плюс, пустое начало / конец такое же, как и у вашего неоперационника.