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


Объекты и именованные числа - часть 3


constant,

является переменной). Для-изменения значения переменной существует только два пути: непосредственное присваивание и косвенное изменение (см. 6.2) оператором вызова процедуры или входа (это действие может быть выполнено над самой переменной, над подкомпонентой переменной либо над другой переменной, для которой данная является подкомпонентой).

Предвыполнение описания объекта происходит следующим образом:

а. Устанавливается подтип объекта посредством предвыполнения указания подтипа или определения ограниченного индексируемого типа.

б. Если описание объекта включает явную инициализацию, то его начальное значение получается вычислением соответствующего выражения. В противном случае вычисляются неявные начальные значения (если они есть) объекта или его подкомпонент.

в. Создается объект.

г. Начальное значение (заданное явно или по умолчанию) присваивается объекту или соответствующей подкомпоненте.

Неявные начальные значения определяются для объектов, заданных описанием объекта, и для компонент таких объектов в следующих случаях:

• Для объекта ссылочного типа — его неявное начальное значение равно пустому значению ссылочного типа.

• Для объекта задачного типа — неявное начальное (и единственное) значение обозначает соответствующую задачу.

• Если тип объекта является типом с дискриминантами и его подтип ограничен, то неявное начальное (и единственное) значение каждого дискриминанта определяется подтипом объекта.

• Для объекта составного типа неявное начальное значение каждой компоненты, имеющей выражение по умолчанию, получается вычислением этого выражения, если только компонента не дискриминант ограниченного объекта (предыдущий случай).

Если компонента сама является составным объектом, значение которой не определено ни явной инициализацией, ни выражением по умолчанию, то неявное начальное значение компонент составного объекта определяется теми же самыми правилами, что и для описанного объекта.




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