lua中的函数
2016-04-13 15:39
309 查看
在lua中,定义函数的形式是:
'''
function func(a,b) --func是函数名,在里面写关于函数的实现,a,b是函数的参数
end
'''
将函数和table结合起来对于在不同的情况下使用不同的函数,是有很大的帮助的
例如
--写一个加减乘除的东西:
'''
local l_func = {
[1] = function(a,b)
return a + b
end,
[2] = function(a,b)
return a - b
end,
[3] = function(a,b)
return a * b
end,
[4] = function(a,b)
if b ~= 0 then
return a / b
else
return 0
end
end
}
local num = l_func[1](4,2) --调用函数得到两个数的和
'''
在使用某一个数据的时候,首先就是要确定数据的存在。这样能保证程序不会存在崩溃。
lua中的函数一般包括是有返回值的和没有返回值的,
有返回值的函数又包括一个返回值,和多个返回值的,不管是多少个返回值,总的思想是给一个(或多个)值,得
到一个(或)多个值,函数的实现就是根据给的参数,以及需求,对数据进行处理,最后得到数据。
一个返回值的例子
'''
function addTwoNumber(a,b)
return a + b
end
function getnumber(a,b)
return a + b,a,b
end
'''
以上两个函数,第一个函数返回一个值,第二个函数返回三个值,在调两个函数相加的时候,两个函数都是可以的
。
local num = getnumber(4,5),只会得到两个数的相加,另外的两个返回值没有变量去接收他,故不考虑。
local a,b,c = addTwoNumber(4,5),因为只返回一个值,所以把函数返回的值赋值给a,其余的两个变量的值为nil
没有返回值类型的函数一般是在函数内部对一系列操作的集合。
'''
function func(a,b) --func是函数名,在里面写关于函数的实现,a,b是函数的参数
end
'''
将函数和table结合起来对于在不同的情况下使用不同的函数,是有很大的帮助的
例如
--写一个加减乘除的东西:
'''
local l_func = {
[1] = function(a,b)
return a + b
end,
[2] = function(a,b)
return a - b
end,
[3] = function(a,b)
return a * b
end,
[4] = function(a,b)
if b ~= 0 then
return a / b
else
return 0
end
end
}
local num = l_func[1](4,2) --调用函数得到两个数的和
'''
在使用某一个数据的时候,首先就是要确定数据的存在。这样能保证程序不会存在崩溃。
lua中的函数一般包括是有返回值的和没有返回值的,
有返回值的函数又包括一个返回值,和多个返回值的,不管是多少个返回值,总的思想是给一个(或多个)值,得
到一个(或)多个值,函数的实现就是根据给的参数,以及需求,对数据进行处理,最后得到数据。
一个返回值的例子
'''
function addTwoNumber(a,b)
return a + b
end
function getnumber(a,b)
return a + b,a,b
end
'''
以上两个函数,第一个函数返回一个值,第二个函数返回三个值,在调两个函数相加的时候,两个函数都是可以的
。
local num = getnumber(4,5),只会得到两个数的相加,另外的两个返回值没有变量去接收他,故不考虑。
local a,b,c = addTwoNumber(4,5),因为只返回一个值,所以把函数返回的值赋值给a,其余的两个变量的值为nil
没有返回值类型的函数一般是在函数内部对一系列操作的集合。
相关文章推荐
- ulua
- 机器学习:weka中Evaluation类源码解析及输出AUC及交叉验证介绍
- 支持lua脚本的串口调试助手
- 项目记录36--tolua 框架真机成功热跟新搞定 + 简单池子PrefabsPool.lua
- Lua数据类型转换
- Lua注释
- 150. Evaluate Reverse Polish Notation
- 如何将c结构数据传给lua(转)
- Lua注册回调到C++
- Lua中的userdata
- lua-5.1 和 lua-5.2 之间的一些差异
- lua 和 C 语言进行交互 —— 如何传递table
- C++和Lua相互传递数据
- Lua的栈及基本栈操作
- 【笨木头Lua专栏】基础补充05:迭代器番外篇
- Lua 控制台输出
- 从lua调用C函数
- 编写高性能的Lua代码
- Lua动态list
- Lua语法