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


Агрегаты - часть 4


В многомерном агрегате допустимо использование строкового литерала в качестве одномерного массива символьного типа. В дальнейшем связанные с агрегатами массивов правила формулируются в терминах одномерных агрегатов.

За исключением последнего сопоставления компонент с единственным выбором

others,

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

others

является статическим, если статическим является соответствующее ограничение индекса.

Границы агрегата массива, имеющего выбор

others,

определяются соответствующим ограничением индекса. Использование выбора

others

допускается только тогда, когда агрегат находится в одном из следующих контекстов (контекст определяет соответствующее ограничение индекса):

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

Для агрегата, помещенного в такой контекст и содержащего сопоставление с выбором

others,

другие именованные сопоставления допускаются только в случае фактического параметра (не являющегося фактическим параметром настройки) или результата функции. Если' агрегат — многомерный массив, то это ограничение распространяется и на все подагрегаты.

б) Агрегат — это операнд квалифицированного выражения, обозначение типа которого указывает ограниченный индексируемый подтип.

в) Агрегат — это выражение в сопоставлении компонент другого агрегата индексируемого или именуемого типа, и если этот объемлющий агрегат — многомерный агрегат индексируемого типа, то сам он заключен в один из этих трех видов контекста.




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



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