|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
ПараметрыРассмотрим более подробно, каким образом метод обменивается информацией с вызывающим его кодом. При вызове метода выполняются следующие действия: 1. Вычисляются выражения, стоящие на месте аргументов. 2. Выделяется память под параметры метода в соответствии с их типом. 3. Каждому из параметров сопоставляется соответствующий аргумент (аргументы как бы накладываются на параметры и замещают их). 4. Выполняется тело метода. 5. Если метод возвращает значение, оно передается в точку вызова; если метод имеет тип void, управление передается на оператор, следующий после вызова. При этом проверяется соответствие типов аргументов и параметров и при необходимости выполняется их преобразование. При несоответствии типов выдается диагностическое сообщение.
4.2.1 Параметры-значения
Параметр - значения описывается в заголовке метода следующим образом: Тип имя Пример заголовка метода, имеющего один параметр - значения целого типа: void P(int x) Имя параметра может быть произвольным. Параметр x представляет собой локальную переменную, которая получает свое значение из вызывающей функции при вызове метода. В метод передается копия значения аргумента. Механизм передачи следующий: из ячейки памяти, в которой хранится переменная, передаваемая в метод, берется ее значение и копируется в специальную область памяти – область параметров. Метод работает с этой копией, следовательно, доступа к ячейке, где хранится сама переменная, не имеет. По завершении работы метода область параметров освобождается. Таким образом, для параметров – значений используются, передача по значению. Ясно, что способ годится только для величин, которые не должны измениться после выполнения метода, то есть для его исходных данных. При вызове метода на месте параметра, передаваемого по значению, может находиться выражение, а также, конечно, его частные случаи – переменная или константа. Должно существовать неявное преобразование типа выражения к типу параметра.
4.2.2 Параметры-ссылки
Во многих методах все величины, которые метод должен получить в качестве исходных данных, описываются в списке параметров, а величина, которую вычисляет метод как результат своей работы, возвращается в вызывающий код с помощью оператора return. Очевидно, что если метод должен возвращать более одной величины, такой способ не годится. Еще одна проблема возникает, если в методе требуется изменить значение каких – либо передаваемых в него величин. В этих случаях используются параметры – ссылки. Признаком параметра – ссылки является ключевое слово ref перед описанием параметра: Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |