15.3. КОНСТАНТЫ-ЗАПИСИ
Определение константы-записи имеет следующий вид:
<идентификатор> : <тип> = (<сп.знач.полей>)
Здесь <идентификатор> - идентификатор константы; <тип> - тип записи; <сп. знач. полей> - список значений полей.
Список значений полей представляет собой список из последовательностей вида: имя поля, двоеточие и константа. Элементы списка отделяются друг от друга двоеточиями, например:
type
Point = record
X, Y : Real end;
Vect = 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
Origon : Point = (X : 0; Y : -1) ;
Line : Vector =
((X : -3.1; Y : 1.5), (X : 5.9; Y : 3.0));
SomeDay : Date = (D : 16; M : May; Y : 1997);
Поля должны указываться в той последовательности, в какой они перечислены в объявлении типа. Если в записи используется хотя бы
одно поле файлового типа, такую запись нельзя объявить типизированной константой. Для записей с вариантными полями указывается только один из возможных вариантов констант. Например:
type
Forma = record
case Boolean of
True : (Birthplace : String [40]);
False : (Country : String [20];
EntryPort : String [20];
EntryDate : array [1..3] of Word;
Count : Word) end;
const
Percon1 : Forma = (Country : 'Норвегия';
EntryPort : 'Мурманск';
EntryDate : (16, 3, 89);
Count : 12);
Percon2 : Forma = (Birthplace : 'Москва');