Основы программирования на языке Turbo Pascal. Беляева И.В. - 200 стр.

UptoLike

Составители: 

200
Рассмотрим объявление и использование вариантных записей на
примере.
Разработаем тип вариантной записи для хранения прямоугольников
следующих типов:
Пустой прямоугольник.
Прямоугольник с заливкой.
Прямоугольник с размещенным в нем тексте.
Используя этот тип, создадим массив, хранящий информацию о разных
прямоугольниках. Далее, выведем прямоугольники на экран.
Сначала создадим тип вариантной записи.
Проанализируем, какие поля необходимы для разных вариантов
прямоугольника.
Для пустого прямоугольника необходимо четыре поля для хранения
координат углов прямоугольника и одно поле для хранения цвета рамки.
Для заполненного прямоугольника необходимо 4 поля для координат
углов прямоугольника, поле для хранения цвета рамки, поле для хранения
цвета заливки и поле для хранения стиля заливки.
Для прямоугольника с текстом необходимо 4 поля для координат углов
прямоугольникаполе для хранения цвета рамки, поле для хранения
цвета текста и поле для хранения самого текста.
Получается, что во всех трех вариантах присутствуют 4 координаты
углов прямоугольника и цвет рамки. Следовательно, эти 5 полей составляют
фиксированную часть записи. Остальные поля нужны лишь в разных
вариантах. Следовательно, из них будут составлены альтернативные группы
вариантной части записи. Для идентификации использования той или иной
альтернативной группы нужно еще одно полеполе-признак варианта.
Поле-признак лучше всего делать перечисляемого типа. В нашем случае
поле-признак будет иметь такой тип:
FigureType = {тип фигур}
(FTRect, {пустой прямоугольник}
FTFillRect, {заполненный прямоугольник}