반응형

함수는 일정한 실행단위를 어느 순간에 한꺼번에 실행하기 위해 하나의 값으로 선언해놓은 것입니다. 즉, 함수값을 가지는 변수는 그 자체로 실행이 가능합니다.

루아는 값을 여러개 return할 수 있습니다. (예를 들면, a, b, c = func(d) 이런 것이 가능합니다.)

기본 문법은 다음과 같습니다. ([] 표시는 안적어도 문법에 맞다는 의미입니다. 즉, 인자1, 인자2...는 함수성격에 따라 적어도되고 안적어도 됩니다.)

 [루아스크립트]

 

function 함수명 ([인자1, 인자2, ...])
...
end

 

 

다음은 인자로 넘겨받은 문자열을 "루아"를 끝에 붙여서 출력하는 함수입니다.

 

function foolprint (i)
  local tmp = i.."루아"
  print(tmp)
end

 

 

함수를 사용하는 것은 다음과 같이 합니다.

 

foolprint("루아") -- "루아"라고 출력됩니다

 

함수는 반환값을 가질 수도 있습니다. 이때에는 함수내에 return이라고 하는 키워드를 사용합니다. 물론, 루아 특성상 여러개의 값을 반환할 수 있습니다.

다음은 두개의 인자를 받아서 더한 결과와 곱한 결과를 각각 반환하는 함수의 예입니다.

 

 

함수는 반환값을 가질 수도 있습니다. 이때에는 함수내에 return이라고 하는 키워드를 사용합니다. 물론, 루아 특성상 여러개의 값을 반환할 수 있습니다.

다음은 두개의 인자를 받아서 더한 결과와 곱한 결과를 각각 반환하는 함수의 예입니다. 
 

function calc1(x, y)
  local a = x + y
  local m = x * y
  return a, m
end

a, b = calc1(10, 10)
print(a, b) -- "20   100"이라고 출력됩니다.

+ Recent posts