Перекрытие
Перекрытие, оно же shadowing — это ситуация, когда локальная переменная или параметр функции имеет то же имя, что и глобальная переменная. В результате локальная переменная скрывает переменную из внешнего контекста, делая ее недоступной в текущей области видимости.
Единственный допустимый случай это когда аргумент или локальная переменная перекрывает глобальную переменную.
globals
integer A = 1
endglobals
function Test takes string A returns nothing
call ConsolePrint(A) // A
endfunction
function main takes nothing returns nothing
call Test("A")
call ConsolePrint([[[I2S|i2s.html]]](A)) // 1
endfunction
Last modified: 22 October 2024