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

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

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

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

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

Выражение по умолчанию допустимо только в спецификации параметра вида (и (независимо от явного или неявного его указания). Тип выражения по умолчанию должен совпадать с типом соответствующего формального па.раметре. Глава 6 Не допускается использование имени, обозначающего формальный параметр, в выражении по умолчанию, если спецификация этого параметра дана в том жв разделе формальных параметров. Предвыполнение описания подпрограммы предвыполняет соответствующий раздел фор. мальных параметров. Предвыполнение раздела формальных параметров не дает другого эффекта. Примеры описания подпрограмм: пассов~не ТНАЧЕНЕЕ ТЯЕЕ; ргосолко )МСВЕМЕМТ(Х: )и онг )МТЕОЕЯ); рпиквнго Я)ОНТ )МОЕМТ(МАЙО!М: он! Ь)МЕ 8)ЕЕ); ргосеаио ЗЧУ)ТСН(РВОМ, ТО: )и ао! ММК); — см.

3.5.4 — см. 3.8.1 — — см. 3.5.7 !пианол ЯАМООМ книп РВОВАВ!Шту; Ъпаяоп М(М СЕЩХ: ММК) книп СЕщс — — см. 3.8.1 Викяоп МЕХТ ЕВАМЕ(К: Р08)Т(ЧЕ) ккт РНАМЕ: — — см. 3.8 Викяоп ООТ РЯОООСТН.ЕРТ,Я)6НТ: ЧЕСТОВ) манго ЯЕА!.: — — см 36 анпсвои " "(!.ЕРТ,Я!6НТ: МАТЙ!Х) капп МАТЯ)Х; — см. 3.6 Примеры параметров с выражениями по умолчанию; ргоаовнга РЯ)МТ НЕАОЕЯ(РАОЕЕ: )и МАТОВАЫ НЕАОЕВ: )П ШМЕ:= Н .. ШМШ(АЗТ г> ' '); — — СМ. 3.6 СЕМТЕЙ: М ВООЬЕАМ ы ТВОЕ); Примечание.

Вычисление выражений по умолчанию начинается при определенных вызовах подпрограмм, как пояснено в равд. 6.4.2 (выражения по умолчанию не вычисляются при предвыполнении описания подпрограммы). Все подпрограммы могут быть вызваны рекурсивно и являются реентерабельными. Ссылки: вид 6.2, вызов подпрограммы 6.4, выражение 4.4, вычисление 4.5, идентификатор 2.3, имя 4.1, обозначение типа 3.3.2, операция 4.5, описание 3.1, предвыполнение 3.9, пред- выполнение не имеет другого эффекта 3.9, процедура 6, совмещение 6.6, 8.7, список идентификаторов 3.2, строковый литерал 2.6, формальный параметр 6.2, функция 6.5. 6.2.

ВИДЫ ФОРМАЛЬНЫХ ПАРАМЕТРОВ )п Формальный параметр — константа, разрешается только чтение зна- чения соответствующего фактического параметра. )п оЫ Формальный параметр — переменная, разрешается как чтение, так и изменение значения соответствующего фактического параметра. Формальный параметр — переменная, разрешается изменение значе. ния соответствующего фактического параметра.

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

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

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

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

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

3.7.1 и 6.4.1). Если фактический параметр вызова подпрограммы является подкомпонентой, которая зависит от дискриминантов переменнои неограниченного именуемого типа, то выполнение вызова ошибочно, если значение любого дискриминанта переменнои изменяется при этом выполнении; это правило не применяется, если вид параметра (п и тип подкомпоненты — скалярный тип или ссыпочный тип.

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

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

9.5] с тем же смыслом, что и для подпрограмм. Для формальных параметров настройки определены другие виды параметров (см. 12.1.1). Для всех видов справедливо, что если фактический параметр указывает задачу, то соответствующий формальный параметр указывает ту же задачу; то же самое имеет место для подкомпоненты фактического параметра и соответствующей подкомпоненты формального параметра. Ссылки: вид 6.1, выражение 4.4, вычисление 4.5, глобальный 8.1, граница массива 3.6.1, дискриминант 3.7.1, зависеть от дискриминанта 3.7.1, задача 9, задачный тип 9.2, именуемый тип 3.7, индексируемый тип 3.6, исключение 11, личный тип 7.4, неограниченная переменная 3.2.1, неограниченный индексируемый тип 3.6, неограниченный тип с дискриминантами 3.7.1, обозначение типа 3.3.2, объект 3.2, ограничение 3.3, оператор вызова входа 9.5, оператор 379 вызова подпрограммы 6.4, ошибочный 1.6, переменная 3.2.1, подкомпонента 3.3, присваивание 6.2, скалярный тип 3.6, спецификация параметра 6.1, ссылочное значение лвЕ 3.8, ссылочный тип 3.8, тело подпрограммы 6.3, фактический параметр 6.4.1, формальный параметр 6.1, фор.

мальный параметр настройки 12.1. 6.3. ТЕЛА ПОДПРОГРАММ Тело подпрограммы определяет ее выполнение. тело подпрограммы с= спецификация подпрограммы (в (раздел описаний) Ьв9)п последовательность операторов (ехсерИоп обработчик исключения (обработчик исключенияД епд [обозначение); Описание подпрограммы необязательно. При отсутствии описания спецификация подпрограммы в ев теле(или в следе тела) играет роль описания. Для каждого описания подпрограммы должно быть соответствующее тело (кроме подпрограмм, написанных на другом языке, как поясняется в равд. 13.9). Если даны и описание, и тало, то спецификация подпрограммы в теле должна быть согласована со спецификацией подпрограммы в описании (см.

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

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

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

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