Главная » Просмотр файлов » Н. Джехани - Язык Ада (1988)

Н. Джехани - Язык Ада (1988) (1160771), страница 95

Файл №1160771 Н. Джехани - Язык Ада (1988) (Н. Джехани - Язык Ада (1988)) 95 страницаН. Джехани - Язык Ада (1988) (1160771) страница 952019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 95)

8.4 (см. также равд. 8.6 о видимости библиотечных модулей). Описание скрыто во внутренней зоне описания, если она содержит омоним этого описания; внешнее описание является тогда скрытым в непосредственной области действия этого внутреннего омонима. Каждое из двух описаний является омонимом другого, если оба описания имеют один и тетив идентификатор и не более чем для одного из них допустимо совме. щение. Если совмещение допустимо для обоих описаний, то каждое из двух является омони. мом другого в случае, если они имеют одинаковый идентификатор, символ операции или сим.

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

В таких случаях предопределенная операция всегда скрыта другим омонимом; производная подпрограмма скрывает предопределенную операцию, но скрыта сама любым другим омонимом. )7 вила е» ииоеги Там, где скрытие осуществляется таким образом, неявное описание скрыто во всей области действия другого описания (независимо от того, какое описание стоит первым); неявное спи.

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

Операция, обозначенная знаком, непосредственно видима тогда и только тогда, когда описание соответствующей операции непосредственно видимо. Наконец, обозначения, связанные с баювой операцией, непосредственно видимы во всей области дей. стеня этой операции. Пример: рюоаейее Р ! ° А, В: ВОО!.ЕАН; ромеечге 0 Ь 0: 800!.ЕАМ; 8; ВООЬЕАИ; — внутренний омоним В ьщ(м в:= А; — означает ав:= Р.А; с:= Р.в; — означает б.с:= р.в; ей ьевм А = В; — означаетрй:= Р.В; еов; Примечание о видимости библнотечньи модулей.

Видимость библиотечных модулей определена спецификаторами совместности (см. 10.1.1) и тем фактом, что библиотечные модули неявно описаны в пакете ЗТАМОАВО (см. 8.6). Примечание об омонимах. Один и тот же идентификатор может находиться в различных описаниях и, таким образом, соответствовать различным понятиям, даже если области действия описаний перекрываются. Перекрытие областей действия описаний с одним и тем же идентификатором может получиться из-за совмещения подпрограмм и литералов перечисле.

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

Правила, определяющие непосредственную область действия, скрытия и видимости, предусматривают, что ссылка на идентификатор в его собственном описании является неправильной (исключая слу. чаи пакетов и настраиваемых пакетов). Идентификатор скрывает внеание омонимы в соб. ственной непосредственной области действия, т.е. от начала описаний; с другой стороны, идентификатор является видимым только после конца описания. По этой причине (кроме последнего) все следующие описания являются неправильными. К: (МТЕОЕй:= К е К; -- неправильно Т: Т: -- неправильно р 4 Р(Х: Р); -- неправильно рпмейие й(й; ЙЕАО; р о ого 0(Х: йЕАь:= О); - - неправильно,даже если существует функция с именем О -. правильное, хотя создает путаницу. Ссылки: агрегат 4.3, аргумент 2.8, базовая операция 3.3.3, библиотечный модуль 10.1, видимый раздел 7.2, вызов входа 9.5, вызов подпрограммы 6.4, эадачный модуль 9, звдачный тип 9.1, зарезервированное слово 2.9, знак операции 6.1, зона описания 8.1, идентификатор 2.3, именованная компонента 4.1.3, именуемый тип 3.7, конкретизация настройки 12.3, лексема 2.2, литерал 2.5, настраиваемый модуль 12, настраиваемый пакет 12.1, находится непосредственно в 8.1, непосредственная область действия 8.2, неявное описание 3.1, область действия 8.2, объект 3.2, ограничение дискриминанта 3.7.2, оператор принятия 9.5, операция 4.5, описание 3.1, описание входа 9.5, описание компоненты 3.7, описание параметра настройки 12.1, описание подпрограммы 6.1, описание типа 3.3.1, пакет 7, параметр 6.2, подпрограмма 6, постфикс 392 Глава В 4.1.3, прагма 2.8, программный модуль 6, простое имя 4.1, распространяется 8.1, расширенное имя 4.1.3, семейство входов 9.5, совмещение 6.6, 8.7, соответствует типу 4.1, сопоставление компонент 4.3, сопоставление параметров 6.4, сопоставление параметров настроики 12.3, составной ограничитель 2.2, спецификатор использования 8.4, спецификация дискриминанта 3.7.1, спецификация литерала перечисления 3.5.1, спецификация параметра 6.1, спецификация подпрограммы 6.1, тип 3.3, указывать 3.8, формальный параметр 6.1, формальный параметр наст.

ройки 12.1. '8.4. СПЕЦИФИКАТОРЫ ИСПОЛЬЗОВАНИЯ Спецификатор использования обеспечивает непосредственную видимость описаний, ко. торые находятся в видимых разделах пакетов с именами, упомянутых в спецификаторе испо. льзования. спецификатор использования с = мве имя пакета (, имя пакета); Для каждого спецификатора использования существует определенная зона текста, называемая областью действия спецификатора использования. Эта зона начинается непосредственно после спецификатора использования. Если спецификатор испопыювания является элементом описания некоторой зоны описания, то область действия спецификатора использования распространяется до конца этой зоны описания.

Если спецификатор использования находится в спецификаторе контекста компилируемого модуля, то область действия специфика. тора использования распространяется до конца зоны описания, связаннои с данным компилируемым модулем. Чтобы определить, какие описания становятся прямо видимыми в данном месте с по.

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

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

Эти правила сформулированы в терминах набора пакетов, упомянутых в спе. цификаторах использования. Следовательно, приведенные ниже строчки текста дают один и тот же эффект (в предположении существования единственного пакета Р). нае Р; нае Р; нае Р, Р; Пример противоречия имен в двух пакетаю рпкаенге й ! ° рааааее ТНАРИС Ь аура СОЬОН ! ° (йЕО, АМВЕН, ВНЕЕМ); еев тйАРГЧС; раеьаве ЧЧАТЕй СОЬОНВ ! ° аЧРе СО!.Ой Ь ВИН!ТЕ, НЕО. ЧЕИ.ОЧЧ, ОНЕЕМ, ВЬОЕ, ВНОЧЧМ, В(АСК); еаЬ ЧЧАТЕН СОЬОНЗ; нае ТНАЕР!С; сОЕОн, йеО, АмВен, и Онеем непосредственно видимы нае ччАтен сОЕОнв; — два омонима Онеем непосредственно видимы, Ьн! СОЬОН не является более непосредственно видимым 393 П вила еи имости евьзтрв ыбнт 1 ° тя*РР1с.сОьОВ; — подтип использован для разрешения ивьттрв Внлое ыФАтея сОЬОВВ.ООЬОВ; — противоречия, связанного с именем типа.

соьОВ 5!ОНА!.: Ь16НТ; РА1МТ: 5НАОЕ; Ьвеш 5!Омль:- ОВЕем; — из пакета тВАРР1С РА1МТ ;= ОВЕЕМ: — из пакета ЧЧАТЕВ СОЬОВВ впд В; Пример идентификации имени со специфнкатором использования: Рввввев О 1 ° Т, О, Ч: ВООЬЕАМ; впа О; Ргеввдвгв Р 1в рваьвве Е 1в В, ЧЧ, Ч: 1МТЕЙЕВ; еяа Е: Рюввечге 0 1 ° Т, Х: ВЕАЫ иве О, Е; — имя ТозначаетОТ, по! О.Т вЂ” имя ОозначаетО.Π— имя ВозначаетЕ. — имя ЧуозначаетЕЧЧ вЂ” имя ХозначаетО.Х вЂ” имя неправильно: должно быть использовано О.ч или впа 0; Ьееш впд Р; Ссылки: видимый раздел 7.2, зона описания 8.1, идентификатор 2.3, имя 4.1, компилируемыи модуль 10.1, находиться непосредственно в 8.1, непосредственная видимость 8.3, непо. средственная область действия 8.2, область деиствия 8.2, омоним 8.3, описание 3.1, описание подпрограммы 8.1, пакет 7, предвыполнение 3.1, 3.9, предвыполнение не имеет другого эффек.

та 3.1, распространение 8.1, скрытие 8.3, спецификатор контекста 10.1, спецификация литера. ла перечисления 3.5.1, элемент описания 3.9. 8.5. ОПИСАНИЯ ПЕРЕИМЕНОВАНИЯ Описание переименования задает другое имя для понятия. описание переименования::= идентификатор: обозначение типа гепаглеа имя объекта; (идентификатор: ехсербоп гепагпеа имя исключения; (расваВе идентификатор гепаглев имя пакета; (спецификация подпрограммы гепаглеа имя подпрограммы или входа; Предвыполнение описания переименования вычисляет имя, которое следует после зарезервированного слова гепвглев, и таким образом определяет понятие, обозначенное этим именем (переименованное понятие). В любой точке, где описание переименования видимо, идентификатор или знак операции, заданный в этом описании, обозначает переименованное понятие.

Первая форма описания переименования используется для переименования объектов. Переименованное понятие должно быть объектом базового типа обозначения типа. Описание переименования не изменяет свойств переименованного объекта. В частности, описание переименования не оказывает влияния на значение объекта и на то, является ли он константой или нет; аналогично переименования не затрагивают ограничения, накладываемые на объект (любое ограничение, которое следует из обозначения типа, входящего в описание переимено.

Глава Е вания, игнорируется). Описание переименования правильно только в том случае, если точно один объект имеет этот тип и может быть обозначен этим именем объекта. Существуют следующие ограничения, связанные с переименованием подкомпоненты переменной, которая зависит от дискриминантов. Переименование недопустимо, если подтип переменной, как зто определено в соответствующем описании объекта, описании компоненты или указании подтипа компоненты, является неограниченным типом или если переменная — это формальный объект настройки (вида 1п ом1).

Характеристики

Тип файла
DJVU-файл
Размер
4,41 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6455
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее