Записи (PascalABC.NET)

Материал из Информационная безопасностя
Версия от 11:46, 20 апреля 2023; Безуглов Сергей (обсуждение | вклад) (Новая страница: «{{TOCRight}} == Pascal ABC.NET выбор школьника - Часть 3 == * [http://pascalabc.net/downloads/OsipovBook/StudentChoice3.pdf Pascal ABC.NET вы...»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

Pascal ABC.NET выбор школьника - Часть 3

Записи

Записью (record) называется набор элементов, в котором каждый элемент имеет имя и называется полем записи.

Пусть требуется написать программу для работы с простыми дробями. Дробь состоит из числителя и знаменателя, причем оба они имеют целочисленный тип. В этом случае можно описать пользовательский тип fraction, представляющий собой запись с полями Числитель и Знаменатель, имеющими тип integer.

1 type
2  fraction = record
3     Numerator, Denominator: integer
4  end;
5 begin
6  var a, b, c: fraction; // три дроби
7  var ma: array of fraction; // динамический массив дробей
8  // ...
9 end.

Запись имеет заголовок record, в котором указывается имя записи. Далее следуют описания полей записи без иcпользования ключевого слова var. Заголовок не отделяется от описания полей привычной точкой с запятой. Описание записи завершается ключевым словом end, перед которым можно не указывать точку с запятой.

Для обращения к полям записи используется точечная нотация. Указывается имя переменной, идентифицирующее запись, а затем через точку – имя поля. Если поле, в свою очередь, имеет собственные поля, после имени поля ставится еще одна точка и т.д. Например, для приведенного выше фрагмента кода можно указать a.Numerator или ma[3].Denominator.

Записи можно присваивать (при этом выполняется копирование содержимого каждого поля) и сравнивать.