Описание константы типа запись содержит идентификатор и зна-
чение каждого поля, заключенные в скобки и разделенные точками с
запятой.
константа-запись
│ ┌───┐ ┌─────────────┐ ┌───┐ ┌──────────────┐ ┌───┐
└─>│ ( ├───>│идентификатор├─>│ : ├─>│типизированная├─┬─>│ ) ├─>
└───┘ ^ │ поля │ └───┘ │ константа │ │ └───┘
│ └─────────────┘ └──────────────┘ │
│ ┌───┐ │
└───────────────────┤ ; │<──────────────────┘
└───┘
Приведем несколько примеров констант-записей:
type
Point = record
x,y: real;
end;
Vector = array[0..1] of Point;
Month =
(Jan,Feb,Mar,Apr,May,Jun,Jly,Aug,Sep,Oct,Nov,Dec);
Date = record
d: 1..31; m: Month; y: 1900..1999;
end;
const
Origin : Point = (x: 0.0; y: 0.0);
Line : Vector = ((x: -3.1; y: 1.5),(x: 5.8; y: 3.0));
SomeDay : Date = (d: 2; m: Dec; y: 1960);
Поля должны указываться в том же порядке, как они следуют в
описании типа запись. Если запись содержит поля файлового типа,
то для этого типа запись нельзя описать константу. Если запись
содержит вариант, то можно указывать только поля выбранного вари-
анта. Если вариант содержит поле признака, то его значение должно
быть определено.