Object Pascal
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: реферат на тему общество, автомобили реферат доход реферат
| Добавил(а) на сайт: Дайнеко.
Предыдущая страница реферата | 8 9 10 11 12 13 14 15 16 17 18 | Следующая страница реферата
Type
tPensioner = Record { пенсионер }
FioIO : String[100]; { Фамилия, имя, отчество одной строкой }
Age : Byte; { Возраст }
Case Citizen: boolean of {Горожанин ли ?}
TRUE : (Town : String[30];) {Город, в котором проживает}
FALSE: (Address : String[100]; {Полный адрес одной строкой}
Transport : String[200];) {Транспорт, которым можно добраться до города}
End;
В этом примере запись tPensioner содержит понятные поля FioIO и Age, а также поле нового вида – логическое поле Citizen вариантного типа. От значения этого поля зависит появление и непоявление некоторых потенциальных полей записи. Так если значение этого поля TRUE (истина), то в записи появляется (становится доступным) поле Town (город), при значении FALSE (ложь) – поля Address и Transport.
При использовании вариантных полей в записях следует подчиняться следующим правилам синтаксиса:
Вариантная часть должна начинаться со строки, в начале которой располагается слово Case, а в ее конце – слово Of. Между ними располагается поле-признак.
Запись должна содержать только один вариант, который должен располагаться в конце всех описанных полей непосредствено перед словом End.
Имена полей во всех вариантах должны быть разными. Они должны также отличаться от имен полей фиксированной части.
Для некоторых возможных значений поля-признака вариант может отсутствовать. В этом случае после двоеточия, соответствующего значению варианта, следует поставить пустой список ( ) либо не указывать этот вариант вообще (включая значение, двоеточие и пустое поле).
Запись-переменная. Синтаксис записи-переменной:
: Record
: ;
: ;
...
: ;
End;
т.е. синтаксисы переменной и типа отличаются одним символом (":" и "=").
Пример:
Type
tMass : Array [1 .. 2, 1 .. 50] of Real;
tRec: Record
Name : String [10];
Mass2: tMass;
End;
Var
J: Integer;
S: String[70];
F,Gri : Record
a,b,c: Integer;
k: Array [1..10] of String [60];
z: tMass;
r: tRec;
End;
В секции Var описаны две простые переменные J и S и две записи F и Gri, имеющих одинаковую, но достаточно сложную структуру:
первых три поля записей F и Gri имеют имена a,b,c и тип Integer;
поле k представляет собой одномерный строковый массив из 10 элементов;
поле z имеет тип, описанный в секции Type как двумерный вещественный массив, в котором первый индекс может изменяться в диапазоне 1 .. 2, а второй индекс – в диапазоне 1 .. 50;
поле r в свою очередь само является записью, поля которой описаны типом tRec в секции Type.
Доступ к полям записей. Переменная, представляющая поле, конструируется из имени записи и поля, отделенного друг от друга десятичной точкой. Такая составная переменная называется квалификационной.
Примеры квалификационных полей вышеприведенных записей:
F.a Gri.a F.k[6] Gri.z [2, 34] F.r.Name F.r.Mass2[1, 50]
Примеры операторов присваивания с участием полей записей:
S := 'Иванов Иван Петрович';
Рекомендуем скачать другие рефераты по теме: конспект, ответы на кроссворды.
Категории:
Предыдущая страница реферата | 8 9 10 11 12 13 14 15 16 17 18 | Следующая страница реферата