Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Используются для организации повторного выполнения блоков кода ⇐ ПредыдущаяСтр 5 из 5
Выход из циклов операторExit Досрочный выход из процедуры или цикла ускоряет работу за счет отказа от ненужных повторений. Для досрочного выхода из оператора Do...Loop используется оператор Exit Do. Для досрочного выхода из цикла For - оператор Exit For For Each с In rangeToSearch Next с
Процедуры типа Sub и Function В Visual Basic можно создавать процедуры двух типов: Sub и Function. • Процедура типа Sub - блок кода, заключенный между операторами Sub и End Sub; он выполняет некоторую операцию, но значения не возвращает. Sub DisplayWelcome() End Sub Процедура типа Function - блок кода, заключенный между операторами Function и End Function; он выполняет определенную операцию, но при этом обязательно возвращает какое-нибудь значение Function AddThree(OriginalValue As Long) End Function Закрытые и открытые процедуры • Открытую процедуру, объявленную с применением ключевого словаPublic,разрешается вызывать из любой процедуры любого модуля приложения. • Закрытую процедуру, объявленную с помощью ключевого словаPrivate, можно вызывать только из процедур, содержащихся в том же (что и закрытая процедура) модуле. Закрытые процедуры • Private Sub Test1() • Private Function AddThree(OriginalValue As Long) Открытые процедуры • Public Sub Test1() • Public Function AddThree(OriginalValue As Long) Если в объявлении процедуры не указано ниPrivate,ниPublic, то по умолчанию она считается открытой Чтобы функция возвращала значение, в ней должен быть оператор, который присваивает это значение имени функции Function ConeSurface(radius, height) End Function Передача аргументов в процедуру Если процедуре необходимы дополнительные данные и их нельзя получить из контекста, в котором она выполняется, то эти данные следует передать ей как аргументы. Чтобы указать, что процедура принимает аргументы, необходимо перечислить их между скобками за именем процедуры в ее объявлении. Аргументы отделяются запятыми Объявляя аргумент, можно задать его тип данных с помощью ключевого слова As (изменяет ли процедура значение аргумента, определяется ключевыми словамиByVal и ByRef), а также определить, обязателен ли аргумент, для чего предназначено ключевое словоOptional Имя переменной, передаваемой в процедуру, необязательно должно совпадать с именем аргумента в объявлении этой процедуры. Пример объявления процедуры Sub UpdateRecord(ByVal custId As Long, ByRef custName As String, _ Optional custRepeat As Boolean) Первый аргумент, custId, обязателен и передается по значению как типLong.Если аргумент передается в процедуру по значению, процедура получает лишь копию переменной, переданной вызывающей процедурой. Если вызываемая процедура модифицирует это значение, то изменится только копия, а не сама переменная в вызывающей процедуре Второй аргумент, сustName, тоже обязателен, но передается по ссылке как тип String. В этом случае процедура имеет доступ к исходной переменной в памяти, и поэтому способна изменить ее значение Третий аргумент, custRepeat, не обязателен и передается по ссылке как тип Boolean.(По умолчанию аргументы всегда передаются по ссылке.)
|
||||||||||||||||
Последнее изменение этой страницы: 2018-05-29; просмотров: 185. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |