1. lua 함수 기본형
function 함수명 ([인자1, 인자2, ...])
...
end
[]안에 있는 것은 의도에 따라 안적어도 적어도 된다.
2. 함수의 인수전달
루아에서는 인수의 갯수가 적어도 함수가 호출이 된다. 단, 전달되지 않은 인수는 nil로 처리 된다.
ex)
function sum(a,b,c)
a = a or 0
b = b or 0
c = c or 0
return a + b + c
end
print(sum(10,20,30))
print(sum(10,20))
print(sum(10))
print(sum())
=>
60
30
10
0
3. 함수의 반환값
c와 동일하게 함수내에 return이라고 하는 키워드를 사용합니다.
그리고 루아 특성상 여러개의 값을 return이 가능하다.
ex)
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