Непейвода Н.Н. Программирование. Раздел 3

Непейвода Н.Н. Программирование. Страница 319

8.5.3. Механизмы передачи параметров

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

передача параметра по значению, когда перед выполнением алгоритма процедуры (на фазе подготовки к выполнению) для такого параметра в локальном контексте процедуры выделяется специальная переменная, именуемая идентификатором формального параметра, которая получает значение фактического параметра;

передача параметра как переменной, при которой фактический параметр, соответствующий формальному, должен быть переменной, замещающей

все вхождения имени формального параметра в теле процедуры на фазе выполнения ее алгоритма;

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

передача параметра по ссылке, когда при исполнении вызова подпро­граммы на фазе выполнения ее алгоритма формальный параметр заменя­ется на адрес фактического параметра.

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

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

Для пояснения введенных понятий ниже приводятся примеры, в кото­рых описание параметра задано в синтаксисе языков C/C++, Pascalили в подобной им манере, когда указанные языки не предусматривают соответ­ствующий механизм.

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие "Крокодилы"

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

О ранее неизвестном виде динозавра, относящемуся к инфраотряду зауроподов, рассказали аргентинские п...

Реклама