Справочное руководство по языку Ада-83


Именуемые типы - часть 2


Предвыполнение описания компоненты состоит из предвыполнения определения подтипа компоненты.

Для предвыполнения определения подтипа компоненты в случае, когда ограничение не зависит от дискриминанта, предвыполняется указание подтипа. Если, с другой стороны, ограничение зависит от дискриминанта, то Предвыполнение состоит из вычисления каждого входящего в ограничение выражения, которое не является дискриминантом.

Примеры описаний именуемого типа:

type DATE is

record

DAY : INTEGER range 1 ..31; MONTH : MONTHNAME; YEAR : INTEGER range 0 .. 4000; end record;

type COMPLEX is

record

RE : REAL := 0.0; IM : REAL := 0.0; end rocord;

Примеры переменных именуемого типа:

TOMORROW, YESTERDAY : DATE; А, В, С : COMPLEX;

-- компоненты А, В и С неявно инициализированы нулем

Примечание.

Выражения по умолчанию для компоненты записи при отсутствии явной инициализации неявно вычисляются предвыполнением описания записи (см. 3.2.1). Если описание компоненты имеет несколько идентификаторов, то выражение вычисляется один раз для каждой такой компоненты записи (поскольку это описание эквивалентно последовательности единичных описаний компонент).

В отличие от компонент массива компоненты записи не обязательно имеют один и тот же тип.

Ссыпки:

выражение 4.4, дискриминант 3.3, зависит от дискриминанта 3.7.1, идентификатор 2.3, имя 4.1, компонента 3.3, лимитируемый тип 7.4.4, обозначение типа 3.2.2, объект 3.2, ограничение 3.3, описание 3.1, подтип 3.3, Предвыполнение 3.9, раздел вариантов 3.7.3, раздел дискриминантов 3.7, 3.7.1, составное значение 3.3, составной ограничитель присваивания 2.2, список идентификаторов 3.2, тип 3.3.

3.7.1. ДИСКРИМИНАНТЫ

Раздел дискриминантов специфицирует дискриминанты типа. Дискриминант записи — это компонента записи. Тип дискриминанта должен быть дискретным.

раздел-дискриминантов:: =

(спецификация-дискриминанта {; спецификация-дискриминанта})

спецификация-дискриминанта ::=

список-идентификаторов : обозначение-типа [:= выражение]




Начало  Назад  Вперед



Книжный магазин