본문 바로가기

Lua

LUA#1 : 변수 - 범위(Scope)

간단하게 아주 기본적인 Lua Script를 알아 봅니다.

변수

대부분 프로그래밍 언어에는 변수(Variable) 이라는 것이 있는데, 프로그램을 만들다 보면 어디에 값을 담아두거나, 그 값에 다른 값을 더하거나 빼거나 하는, 그 모든 용도를 변수라고 합니다. 

Lua 에서는 변수를 쉽게 정의해서 사용할 수 있어요. 전체 사용할 변수라면 그냥 

a = 3

 

이라고 바로 사용하기 시작해도 되고
해당 범위에서만 사용하려면 


local a
a = 3

이렇게 해도 되고, 그냥 한줄로

local a = 3

사용하셔도 됩니다. 이제 a를 출력하거나 다른 값을 넣거나 할 수 있는 것이지요. 

여기서 local을 사용했을 때랑 안했을 때랑 뭐가 다르냐구요? 
바로 유효한 범위(Scope)이 다릅니다. 

범위 - 이 변수가 어디까지 유효한가에 대한 정의입니다. 
Lua 에서는 아무 말 없으면 모두 '전체(Global)'에 해당합니다. 
한 영역에서만 유요하려면 local 이라는 키워드로 정의를 합니다. 
(global 일 때는 따로 정의를 하지 않아요)

print("What is local")

a=3

print(a)

if true then
    local a = 20
    local b = "bbbbb"
    print (a)
    print (b)
end

print (a)
print (b)

이 실행 결과는

What is local
3
20
bbbbb
3
nil

특히 B를 보면 위에 if 라는 조건문안에서 사용했지만 밖에서 b는 이름만 똑같은 global b 이기 때문에 print를 해도 
nil 
이 출력됩니다. 

'Lua' 카테고리의 다른 글

Lua#6 : 함수  (0) 2020.08.12
Lua#5 : 조건  (0) 2020.08.11
Lua#4 : 반복  (0) 2020.08.11
Lua#3 : 연산자 (Operation)  (0) 2020.08.11
Lua#2 : 변수 - 유형 (Type)  (0) 2020.08.11