Pedro Usher 5
unread,Oct 5, 2009, 12:50:45 PM10/5/09Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Rio2d.jogo
--[[Declaração de variáveis locais
Lua permite que se defina explicitamente variáveis de escopo local.
A declaração de uma variável local pode ocorrer em qualquer lugar
dentro de um bloco de comandos,
e seu escopo termina quando termina o bloco no qual foi declarada.
A declaração de uma variável local com mesmo nome de uma variável
global obscurece
temporariamente (i.e., dentro do bloco da declaração local) o acesso à
variável global.
Quando o programador escrever o nome da variável,
estará se referindo à variável local.
Variáveis locais podem ser inicializadas na declaração seguindo a
sintaxe de
atribuições. Para exemplificar, considere o código abaixo:
--]]
a = 2 --variável global assumindo o valor 2
if a > 0 then
local b = a--declara-se uma variável local que recebe o valor de
a (2)
a = a + 1 --incrementa a variável global a de uma unidade
local a = b--declara-se uma variável local a que recebe o valor
de b
print(a)--a refere-se a variável local, logo imprime-se o valor
2
end --fim do bloco e do escopo de a e b locais
print(a) --a refere-se à variável global, logo imprime-se o valor 3
--Pode-se ainda declarar e inicializar várias variáveis locais num
mesmo comando:
--local a, b, c = 2, 5+6, -3
--[[ Neste caso, a recebe 2, b recebe 11 e c recebe -3. Variáveis
locais não inicializadas
assumem o valor nil. --]]