Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
Топ:
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Марксистская теория происхождения государства: По мнению Маркса и Энгельса, в основе развития общества, происходящих в нем изменений лежит...
Интересное:
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Передача значений аргументов при вызове подпрограммы или функции по ссылке
(при этом перед аргументом стоит зарезервированное слово ByRef) означает, что в
процедуру из вызывающей процедуры передается адрес ячейки памяти, по которому
хранится значение аргумента. В этом случае вызываемая процедура использует одну и ту
же ячейку или область памяти, что и вызывающая процедура. При этом не выделяется
дополнительная память для работы с переданным аргументом. Изменение аргумента в
вызываемой процедуре означает изменение значения аргумента и в вызывающей
процедуре.
Существо такого способа связи состоит в том,
что аргумент процедуры связан с той же физической ячейкой памяти, что и значение
аргумента в вызывающей процедуре. Следствием этого является ограничение – значением
аргумента не может быть выражение.
Передача значений аргументов по значению при вызове процедуры означает, что
для аргумента выделяется дополнительная ячейка или область памяти, в которую
записывается копия значения передаваемого аргумента В списке аргументов
вызываемой процедуры перед передаваемым таким образом аргументом должно стоять
зарезервированное слово ByVal. Для копии требуется дополнительная память. Зато
значение аргумента в вызывающей программе может быть выражением. Изменения
аргумента в вызываемой процедуре не ведут к изменению значения аргумента в
вызывающей процедуре. Это удобно, если модификация данных необходима только
внутри вызываемой процедуры и нет необходимости передавать измененные данные
обратно в вызывающую процедуру.
Вместе с тем передача по значению (выделение дополнительной памяти) приводит
к неэффективному использованию памяти. В связи с этим, для строк символов и массивов
нецелесообразно использовать передачу по значению.
22) Необязательные аргументы процедур. (неполный)
Некоторые параметры процедуры можно задать как необязательные, тем самым указывая, что их можно не задавать при вызове процедуры. Необязательные параметры обозначены ключевым словом Optional в определении процедуры. Действуют следующие правила.
· Для каждого необязательного параметра в определении процедуры должно быть указано значение по умолчанию.
· Значение по умолчанию для необязательного параметра следует задавать в виде константного выражения.
· Каждый параметр, идущий в определении процедуры после необязательного, также должен быть необязательным.
При вызове процедуры с необязательным параметром можно опускать этот аргумент. Если он не задан, процедура будет использовать значение по умолчанию, объявленное для этого параметра.
Можно опустить сразу несколько необязательных аргументов в списке аргументов, ставя несколько запятых подряд для обозначения их позиций.
Пример.
sub name (argument 1,,, argument 4)
Именованные аргументы.
При вызове процедур Sub или Function возможна позиционная передача аргументов, т.е. в порядке следования в описании процедуры. Кроме того, аргументы могут передаваться по именам, вне зависимости от позиции. Именованный аргумент состоит из имени аргумента, за которым следует двоеточие со знаком равенства (:=) и значение аргумента: ИмяАргумента:= ЗначениеАргументаИменованные аргументы особенно полезны при вызове процедуры с необязательными аргументами (Optional).Если используются именованные аргументы, то запятые для обозначения отсутствующих позиционных аргументов не нужны. С помощью именованных аргументов проще проследить, какие аргументы переданы, а какие опущены. При вызове процедуры с аргументом Optional можно как указывать, так и не указывать необязательный
аргумент. Если аргумент не указан, то для него используется значение по умолчанию.
24) Коллекции, цикл For Each … Next. (неполный)
Данный цикл выполняется один раз для каждого элемента в массиве. У него нет счетчика как в цикле For…Next. Цикл выполняется фиксированное кол-во раз, соответствующее количеству элементов в массиве.
Цикл For Each…Next имеет следующий синтаксис:
For Each x In Array
//операторы//
Next [x]
x – это переменная, которая перебирает все элементы в группе или массиве (в нашем случае это Array)
Array – это массив или коллекция
|
|
|
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!