반응형

프로그래밍 언어이기 때문에 변수를 사용할 수 있습니다.

 

루아에서의 변수는 선언이 필요 없습니다.

그냥 사용하면 됩니다.

 

일반적으로 C/C++ 에서는 변수를 사용하려면 변수의 형(type) 을 선언해주고 사용해야 합니다.

그러한 관점에서 루아에서는 이러한 변수의 형 선언이 필요하지 않다고 생각하시면 됩니다.

 

또한 루아에서는 변수의 형이 정해지지 않습니다. 변수에 어떠한 값을 대입하는 순간 해당 변수의

형이 변경이 됩니다.

 

다음의 예를 가지고 설명 드리겠습니다.

 

a = 10   -- a 라는 변수는 10이라는 정수를 가집니다.

a = 10.2  -- a 라는 변수는 다시 10.2 라는 실수 값을 가집니다.

a = "abcd"  -- a라는 변수는 다시 "abcd"라는 문자열을 가지는 string 변수가 됩니다.

 

참고) 루아에서는 정수,실수 구분이 없고 그냥 number 입니다. 그러므로 위의 내용은 정수라고 봐도 되고 실수라고 봐도 됩니다.

 

이렇게 a라는 하나의 변수가 그때그때 사용할때 대입되는 값에 따라서 바뀌게 됩니다.

 

C/C++ 와는 확연하게 다른 부분 입니다.

 

 

 

전역변수와 지역변수
C/C++ 프로그래밍을 하다보면 변수가 전역변수(global variable) 가 있고 지역변수(local variable) 가 있습니다.

루아에서도 이러한 개념이 준비되어 있습니다. 단 그 규칙은 다릅니다.

 

루아에서는 모든 변수가 전역 변수 입니다. 단 local 이라는 예약어에 의하여 준비된 변수는 해당 구간에서만 사용되는

지역변수로 처리 됩니다.

 

function test()

 

   a = 10 -- test 라는 함수 안에 있어소 전역 변수가 됩니다.

   local b = 20  -- b 는 지역변수로 test() 라는 함수에서만 사용됩니다.

 

end

위와 같이 지역 변수로 사용하고 싶으면 local 이라는 예약어를 변수 앞에 적어 주어야 합니다.

 

 

function testout()

print(a)

end

 

function testinit()

a = 10

end

 

testinit()

testout()

 

위와 같이 코드를 작성할 경우 출력은 10 이 나옵니다.


[루아스크립트]

+ Recent posts