Функциональные члены

Функциональные члены - это члены, содержащие исполняемый код. Язык определяет следующие категории функциональных членов:

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

При вызове методов, свойств и экземплярных конструкторов производится разрешение перегруженных имен для определения определенного члена из перечня кандидатов, который будет вызван в результате. Этот процесс описан в §7.4.2

В разделе §7.4.2.1 описан процесс вызова функционального члена во время выполнения.

Перечни аргументов

Каждый вызов функционального члена содержит перечень аргументов, который определяет действительные значения или ссылки на переменные соответствующие параметрам функционального члена. Синтаксис для указания перечня аргументов зависит от категории функционального члена:

Аргументы для простых свойств и событий всегда передаются как параметры, передаваемые по значению. Аргументы индексированных свойств также передаются либо как параметры, передаваемые по значению, либо как параметры-массивы. Параметры, передаваемые по ссылке, либо выходные параметры не поддерживаются для указанных категорий функциональных членов. Типы параметров и их различия описаны в разделе Методы: Параметры методов.

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

argument-list:

(    argumentsopt   )

arguments:

argument

arguments   ,   argument

argument:

expression

Var   variable-reference

Out   variable-reference

variable-reference:

expression

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

При обработке вызова функционального члена во время выполнения программы выражения или ссылки на переменные в перечне аргументов вычисляются в порядке слева направо следующим образом:

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

См.также:

Выражения