Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Функция




Секция описания функции.

Синтаксис:

Функция <Имя_функции>([[Знач] <Парам1>[=<ДефЗнач>],...

, [Знач] <ПарамN> [=<ДефЗнач>]])[Экспорт]

//Объявления локальных переменных;

// Операторы;

...

Возврат <ВозвращаемоеЗначение>;

// Операторы;

...

КонецФункции

Англоязычный Синтаксис:

Function <Имя_функции> ([[Val] <Парам1>[=<ДефЗнач>],...

, [Val] <ПapaмN> [=<ДефЗнач>]])[Export]

//Объявления локальных переменных;

// Операторы;

...

Return <ВозвращаемоеЗначение>;

// Операторы;

...

EndFunction

Параметры:

<Имя_функции> Назначает имя функции.
Знач Необязательное ключевое слово, которое указывает на то, что следующий за ним параметр передается по значению, т. е. изменение значения формального па­раметра при выполнении функции никак не повлия­ет на значение фактического параметра, переданного при вызове функции. Если это ключевое слово не указано, то параметр функции передается по ссылке, то есть изменение внутри функции значения фор­мального параметра приведет к изменению значения соответствующего фактического параметра.
<Парам1>,..., <ПарамN> Необязательный список формальных параметров, разделяемых запятыми. Значения формальных пара­метров должны соответсвовать значениям передавае­мых при вызове функции фактических параметров. В этом списке определяются имена каждого из пара­метров так, как они используются в тексте функции. Список формальных параметров может быть пуст. См. также: «Передача параметров».
=<ДефЗнач> Необязательная установка значения параметра по умолчанию. Параметры с установленными значения­ми по умолчанию можно располагать в любом месте списка формальных параметров. Если параметр при вызове процедуры опущен, то он принимает либо установленное по умолчанию значение (если оно есть) либо принимает «пустое» значение (значение неопределенного типа). Если параметру не задано значение по умолчанию и он является последним в списке передаваемых па­раметров, то при вызове процедуры его нельзя опус­кать. Если параметру задано значение по умолчанию и он является последним в списке, то при вызове про­цедуры его можно опускать в списке передаваемых фактических параметров и не ставить запятую перед опущенным параметром. Если параметру не задано значения по умолчанию, то при вызове процедуры его можно опускать в спи­ске передаваемых фактических параметров, но разде­лительную запятую надо ставить.
Экспорт Необязательное ключевое слово, которое указывает на то, что данная функция является доступной из других программных модулей. Данное ключевое сло­во имеет смысл использовать только в глобальном программном модуле.
//Объявления локальных переменных Объявляются локальные переменные, на которые можно ссылаться только в рамках этой функции (см. оператор Перем).
//Операторы Исполняемые операторы функции.
Возврат Ключевое слово, которое завершает выполнение функции и возвращает ВозвращаемоеЗначение в выражение, в котором используется функция. Ис­пользование данного ключевого слова в функции обязательно.
<ВозвращаемоеЗначение> Выражение, значение которого содержит результат обращения к функции.
КонецФункции Обязательное ключевое слово, обозначающее конец исходного текста функции.

Описание:

Ключевое слово Функция начинает секцию исходного текста функции, вы­полнение которой можно инициировать из любой точки программного модуля, просто указав Имя_функции со списком параметров (если параметры не пере­даются, то круглые скобки, тем не менее, обязательны). Если в глобальном про­граммном модуле в теле описания функции использовано ключевое слово Экспорт, то это означает, что данная функция является доступной из всех дру­гих программных модулей конфигурации. Ключевое слово Экспорт имеет смысл использовать только в глобальном программном модуле.

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

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

Переменные, объявленные в теле функции в разделе Объявления_локальных_переменных, являются локальными переменными данной функции, поэтому доступны только в этой функции (за исключением случая передачи их как параметров при вызове других процедур, функций или методов).

Замечание: ключевые слова Функция, КонецФункции являются не операто­рами, а операторными скобками, поэтому не должны заканчиваться точ­кой с запятой (это может приводить к ошибкам выполнения модуля).

См. также: «Передача параметров»

Пример:

Перем Глоб;

// Описание функции

Функция МояФункция(Парам1, Парам2, ПарамЗ) Экспорт

Лок = Глоб + Парам1 + Парам2 + ПарамЗ;

Возврат Лок;

КонецФункции

Глоб = 123;

Рез = МояФункция(5, 6, 7); // Вызов функции




Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 260; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.