Операторы -
это одна или более строк кода, разделенных точкой с запятой. Простые операторы
имеют одну точку с запятой, а составные могут иметь более чем одну точку с
запятой и, таким образом, состоят из множества простых операторов.
Это простой
оператор:
A := B;
Это
составной или структурированный оператор:
begin B := C; A := B;
end;
Простые операторы
Простые
операторы содержат одну точку с запятой. Если Вам необходимо разделить
операторы, то перенесите продолжение оператора на следующую строку с отступом в
два пробела:
Составные
операторы всегда заканчиваются точкой с запятой.
begin MyStatement; MyNext Statement; MyLastStatement;
end;
Присвоения и выражения
Каждое
присвоение и каждое выражение должно располагаться на разных строках.
Правильно
a := b + c;
Inc(Count);
Неправильно
a := b + c; Inc(Count);
Объявление локальных переменных
Локальные
переменные должны иметь стиль Camel Caps. Для локальных переменных префикс F не
требуется.
var MyData: Integer; MyString: string;
Все
переменные с их типами, особенно поля класса, должны быть объявлены на
различных строках.
Объявление массивов
В объявлении
массива перед и после квадратных скобок должны стоять пробелы.
type TMyArray = array [0..100] of Char;
Оператор if
Оператор if
всегда должен располагаться по крайней мере на двух строках
Неправильно
if A < B then DoSomething;
Правильно
if A < B then DoSomething;
В случае
составного оператора необходимо поместить каждый оператор на новую строку.
Неправильно
if A < B
then begin DoSomething; DoSomethingElse; end else begin DoThis; DoThat; end;
Правильно
if A < B
then begin DoSomething; DoSomethingElse; end else begin DoThis; DoThat; end;
Все
остальные варианты расположения операторов не рекомендуются и не одобряются,
хотя и являются синтаксически правильными. Избегайте использования круглых
скобок в простых проверках. Например:
Правильно
if I > 0
then DoSomething;
Неправильно
if (I > 0)
then DoSomething;
Оператор for
Неправильно
for i := 0 to 10 do begin DoSomething; DoSomethingElse; end;
Правильно
for i := 0 to
10 do begin DoSomething; DoSomethingElse; end;
for I := 0 to 10 do DoSomething;
Оператор while
Неправильно
while x <
jdo begin DoSomething; DoSomethingElse; end;
Правильно
while x < j
do begin DoSomething; DoSomethingElse; end; while x < j do Something;
Оператор repeat until
Правильно
repeat x := j; j := UpdateValue; until j > 25;
Оператор case
Несмотря на
то, что существует множество синтаксически правильных конструкций, одобренной и
рекомендованной считается следующая:
Правильно
case ScrollCode
of SB_LINEUP, SB_LINEDOWN: begin Incr := FIncrement div FLineDiv; FinalIncr := FIncrement mod
FLineDiv; Count := FLineDiv; end; SB_PAGEUP, SB_PAGEDOWN: begin Incr := FPageIncrement; FinalIncr := Incr mod FPageDiv; Incr := Incr div FPageDiv; Count := FPageDiv; end; else Count := 0; Incr := 0; FinalIncr := 0; end;
Оператор try
Несмотря на
то, что существует множество синтаксически правильных конструкций, одобренной и
рекомендованной считается следующая: