Lua是解析型语言,C#等语言是编译型语言。 C#在执行的时候会编译出一个可执行文件来执行,但是Lua是一句一句的来执行。 所以Lua 语言中在脚本编写顺序上必须先定义函数,然后在下方才可以调用。 1.Lua函数格式: [局部/全局] function 函数名([参数列表]) –函数体 end

function Hello()
print(“你好”)
end

function Add(a,b)
print(a+b)
end

Hello();
Add(6,8)

结果如下:

>lua -e “io.stdout:setvbuf ‘no’” “1.lua”
你好
14

Exit code: 0

2.我在文章的标题部分给委托打上了双引号,主要原因就是Lua是没有委托这个概念的,因为Lua是真的可以直接把一个方法当作参数来传递。

function Hello()
print(“你好”)
end

function Add(a,b)
print(a+b)
end

–Hello();
–Add(6,8)

————–委托————
function DeleHello(method)
method()
end

function DeleAdd(a,b,method)
method(a,b)
end

DeleHello(Hello)
DeleAdd(3,4,Add)

结果如下:

>lua -e “io.stdout:setvbuf ‘no’” “1.lua”
你好
7

Exit code: 0