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

         

type MIDWEEK is new DAY



type LOCAL-COORDINATE is new COORDINATE; —- Два различных типа type MIDWEEK is new DAY range TUE .. THU; —- CM. 1 type COUNTER is new POSITIVE; -- тот же диапазон, что и у POSITIVE type SPECIAL-KEY is new KEYMANAGER.KEY; — CM. 2 -- Производные подпрограммы имеют следующие спецификации:--procedure GETKEY(K : out SPECIAL_KEY); -—function "<"(X,Y : SPECIAL_KEY) return BOOLEAN;
. Из правил наследования базовых операций и литералов перечисления следует, что обозначения для литерала или агрегата производного типа те же самые, что и для родительского типа; такие литералы и агрегаты называются совмещенными. Из правил также следует, что обозначения компоненты, дискриминанта, входа, отрезка или атрибута одинаковы для производного и родительского типов.
Скрытие производной подпрограммы допустимо даже в одной и той же зоне описания (см. 8.3). Производная подпрограмма скрывает предопределенную операцию, имеющую тот же профиль типа параметров и результата (см. 6.6).
Описание настраиваемой подпрограммы не наследуется, поскольку оно описывает настраиваемый модуль, а не подпрограмму. С другой стороны, конкретизация настраиваемой подпрограммы является (ненастраиваемой) подпрограммой, которая является наследуемой, если она удовлетворяет требованиям наследуемости подпрограмм.
Если родительский тип является логическим, то предопределенные операции отношения над производным типом дают результаты предопределенного типа BOOLEAN (см. 2).
Если спецификатор представления дан для родительского типа и помещен за описанием производного типа, то соответствующий спецификатор представления неприменим к производному типу; следовательно, для такого производного типа допускается явный спецификатор представления.
Если параметр производной подпрограммы принадлежит производному типу, подтип это- .-, го параметра не обязан иметь значение, общее с производным подтипом.
Ссылки: агрегат 4.3, атрибут 4, базовая операция 3, базовый тип 3.3, вид 6.1, видимый раздел 7.2, вход 9.5, вызов функции 6.4, выражение по умолчанию 1, граница диапазона 3.5, дискриминант 3.3, зарезервированное слово 2.9, зона описания 8.1, класс типа 3.3, компонента 3.3, литерал 4.2, литерал перечисления 1, личный тип 7.4, логический тип 3, набор 3.8, начальное значение по умолчанию для ссылочного типа 3.8, непосредственно в 8.1, неявное описание 3.1, ограничение 3.3, ограничение диапазона 3.5, ограничение плавающего типа 7, ограничение фиксированного типа 9, оператор вызова процедуры 6.4, описание 3.1, описание настройки 12.1, определение типа 1, отрезок 2, пакет 7, подпрограмма 6, подтип 3.3, предвыполнение 3.9, предопределенная операция 4.5, преобразование 4.6, процедура б, совмещение 6.6, 8.7, сопоставление параметров 6.4, составной тип 3.3, спецификатор представления 13.1, спецификация пакета 7.1, спецификация подпрограммы 6.1, ссылочное значение 3.8, тип 3.3, указание подтипа 2, фактический параметр 1, формальный параметр

Содержание раздела