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


Различия между параметрами и аргументами

Обновлен: Ноябрь 2007

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

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

Параметры

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

При определении Function или Sub процедуры, необходимо указать список параметров в скобках сразу после имени процедуры. Для каждого параметра необходимо указать имя, тип данных и механизм передачи (ByVal или ByRef). Можно также указать, что параметр является опциональным. Это означает, что вызывающий код не обязан передавать значение для него.

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

Аргументы

Аргумент представляет значение, указанное в параметрах процедуры при ее вызове. Код вызова указывает аргументы при вызове процедуры.

При вызове Function или Sub процедуры список аргументов включается в скобках сразу после имени процедуры. Каждый аргумент соответствует параметру в той же позиции в списке.

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

См. также

Задачи

Практическое руководство. Определение параметра для процедуры

Практическое руководство. Передача аргументов в процедуру

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

Процедуры в Visual Basic

Процедуры Sub

Процедуры Function

Процедуры свойств

Процедуры операторов

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

Рекурсивные процедуры

Перегрузка процедур