Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Передача данных через формальные параметры





Формальные параметры могут быть трех основных разновидностей:

Параметры-значения, параметры - переменные, параметры - константы.

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

<Имя процедуры> (a:Tип 1; c, d, e: Тип 2;...)

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

Достоинством передачи данных с помощью формальных параметров является то, что в качестве фактического параметра можно использовать не только переменные, но и константы и арифметические выражения.

Например: PAST(a, 5, (2*x+3))

К недостаткам такой передачи относятся дополнительные затраты памяти (например, большой массив) и затраты времени на копирования значений.

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

<Имя процедуры> (Var a, b: Тип1; Var c, d, e: Тип2;...)

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

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

<Имя процедуры> (Const a,b:Тип1;Const c,d,e:Тип2;...)

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

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

Кроме использования формальных параметров можно использовать глобальные параметры (видимые и в процедуре и в основной программе).

 

Date: 2015-06-08; view: 590; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию