Замикання (програмування): відмінності між версіями

[перевірена версія][перевірена версія]
Вилучено вміст Додано вміст
уточнення
доповнення
Рядок 9:
<source lang="lua">function addfunc(x)
return function(y) -- Повертає нову функцію без назви, яка додає x до аргументу
return x + y -- Коли ми будемо зсилатисяпосилатися на змінну x, що знаходиться поза даною областю й існування якої менше ніж даної безіменної функції,
--Lua створить замикання
end
end
num_plus = addfunc(2) -- Тепер num_plus - функція, в якій замість x підставлено 2
num_plus = addfunc(2)
print(num_plus(5)) -- В результаті буде виведено 7
</source>