Поделиться через


Практическое руководство. Объявление необязательных параметров процедуры (Visual Basic)

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

Можно определить несколько необязательных параметров, но все необязательные параметры необходимо поместить в конец списка параметров. Все обязательные параметры должны предшествовать необязательным.

Определение необязательного параметра

  1. В объявлении процедуры, перед именем параметра в списке параметров, поставьте ключевое слово Optional.

  2. После имени параметра как обычно укажите предложение As, а после предложения As поставьте знак равенства (=).

  3. После знака равенства укажите значение, используемое по умолчанию для этого параметра. Оно должно быть константным выражением, чтобы компилятор смог полностью вычислить значение выражения во время компиляции.

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

Пример

В приведенном ниже примере показана процедура с объявлением необязательного параметра.

Sub notify(ByVal company As String, Optional ByVal office As String = "QJZ")
    If office = "QJZ" Then
        Debug.WriteLine("office not supplied -- using Headquarters")
        office = "Headquarters"
    End If
    ' Insert code to notify headquarters or specified office.
End Sub

Если вызывающий код не предоставляет значение для office в списке аргументов, то в Visual Basic используется по умолчанию значение "QJZ".

Компиляция кода

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

См. также

Задачи

Практическое руководство. Вызов процедуры, принимающей необязательные параметры (Visual Basic)

Практическое руководство. Определение наличия необязательных параметров (Visual Basic)

Ссылки

Optional (Visual Basic)

ParamArray (Visual Basic)

Основные понятия

Параметры и аргументы процедуры (Visual Basic)

Передача аргументов по значению и по ссылке (Visual Basic)

Передача аргументов по позиции и по имени (Visual Basic)

Необязательные параметры (Visual Basic)

Массивы параметров (Visual Basic)

Перегрузка процедур (Visual Basic)