Функция – это подпрограмма, которая запускается для выполнения определенного действия.
Функции используются для выполнения часто встречающихся действий, выделяя программный код в отдельный блок. Функции облегчают чтение кода и структурируют его. Запустить выполнение функции можно из любого места программы, неограниченное количество раз. Запуск выполнения функции называется – вызов функции. В функцию мы можем передать любые переменные. После выполнения функции получим результат, который можем записать в переменные. Функция, так же как и переменная, имеет свое имя, по этому имени мы будем вызывать функцию.
В языке программирования Lua, функция определяется оператором function. Все функции записываются перед основным кодом программы. После оператора function идет имя функции и круглые скобки. Если скобки пустые, то функция не принимает на входе ни какие переменные. Если нам необходимо передать в функцию, какие-то переменные для выполнения функции, то в скобках указываются переменные. Количество переменных в скобках, зависит от того сколько параметров мы будем передавать в функцию, для ее выполнения. Функция, после выполнения своего кода, может на выходе выдавать какие-то значения, а может и не выдавать. Если функция на выходе выдает какие-то значения, то говориться, что функция возвращает значения. Для того, что бы вернуть определенные значения на выходе функции, в конце функции пишется оператор return (возврат), и через запятую перечисляются возвращаемые переменные. Разберем все вышеперечисленное на примерах. Откроем редактор SciTE и создадим новый файл с названием «005 Функции.lua».
Пример функции, на вход которой не передаются никакие переменные. Значения на выходе так же отсутствуют. Все, что выполняет эта функция – это вывод на экран текста.
function TestFunction ()
print(«Функция, выдающая на экран эту строку»)
end
Для того чтобы вызвать функцию пропишем одну строку, содержащую название функции с круглыми скобками в конце.
TestFunction()
Запустим скрит.
Функция вызвана и выполнена, на экране мы видим текст «Функция, выдающая на экран эту строку».