小白学习之((Lua 05))
来源:互联网 发布:windows下脚本编程实例 编辑:程序博客网 时间:2024/06/10 16:00
--第五章 函数
--Lua 为面对对象的调用提供了一种特殊的语法 冒号操作符
-- body
return a or b
end
--调用
f(1) -- a = 1, b = nil
f(1, 2) -- a = 1, b = 2
f(1, 2, 3) -- a = 1, b = 2, 3被丢弃
--5.1 多重返回值
function f(a, b)
-- body
return a, b
end
print(f(100, 200))
--Lua 会调整一个函数的返回值数量以适应不同的调试情况,若将函数调用作为
--一条单独的语句时,Lua 会丢弃所有返回值,若将函数作为表达式的一部分来
--调用时,Lua 只保留函数的第一个返回值,
function f(a, b)
-- body
return a, b
end
--通过以下示例个人理解是,此时函数表达式除了第一个以外其他的函数表达式
--都是作为表达式的一部分,而最后一个又有点不同Lua 会根据需要需要赋值的
--变量的个数去动态保留几个返回值(个人理解仅供参考)
x, y = f(1, 2)
x, y = f(1, 2), 20
x, y, z = f(1, 2), 20, 30
x, y, z = 20, f(1, 2)
print(x)
print(y)
print(z)
--
t = {f(1, 2)} -- t = {"1", "2"}
print(t[1])
print(t[2])
t = {1, f(100, 200)} -- t = {"1", "100", "200"}
print(t[1])
print(t[2])
print(t[3])
t = {1, f(100, 200), 2} -- t = {"1", "100", "2"}
print(t[1])
print(t[2])
print(t[3])
--5.2 可变参数
function f( ... ) -- ... (表示可变参数)
-- body
end
--5.3 具名实参
--没大懂感觉有点像C++的默认参数
--Lua 为面对对象的调用提供了一种特殊的语法 冒号操作符
--o.foo(o,x) 和 o:foo(x)一样
-- body
return a or b
end
--调用
f(1) -- a = 1, b = nil
f(1, 2) -- a = 1, b = 2
f(1, 2, 3) -- a = 1, b = 2, 3被丢弃
--5.1 多重返回值
function f(a, b)
-- body
return a, b
end
print(f(100, 200))
--Lua 会调整一个函数的返回值数量以适应不同的调试情况,若将函数调用作为
--一条单独的语句时,Lua 会丢弃所有返回值,若将函数作为表达式的一部分来
--调用时,Lua 只保留函数的第一个返回值,
function f(a, b)
-- body
return a, b
end
--通过以下示例个人理解是,此时函数表达式除了第一个以外其他的函数表达式
--都是作为表达式的一部分,而最后一个又有点不同Lua 会根据需要需要赋值的
--变量的个数去动态保留几个返回值(个人理解仅供参考)
x, y = f(1, 2)
x, y = f(1, 2), 20
x, y, z = f(1, 2), 20, 30
x, y, z = 20, f(1, 2)
print(x)
print(y)
print(z)
--
t = {f(1, 2)} -- t = {"1", "2"}
print(t[1])
print(t[2])
t = {1, f(100, 200)} -- t = {"1", "100", "200"}
print(t[1])
print(t[2])
print(t[3])
t = {1, f(100, 200), 2} -- t = {"1", "100", "2"}
print(t[1])
print(t[2])
print(t[3])
--5.2 可变参数
function f( ... ) -- ... (表示可变参数)
-- body
end
--5.3 具名实参
--没大懂感觉有点像C++的默认参数
0 0
- 小白学习之((Lua 05))
- 小白学习之(Lua(01))
- 小白学习之(Lua(02))
- 小白学习之((Lua 03))
- 小白学习之((Lua 04))
- 0基础lua学习(十七)C调用Lua----01小demo
- Redis学习笔记(八)redis之lua脚本学习
- lua学习之--liu.lua
- lua学习(一)
- lua学习(二)
- lua学习(一)
- lua学习(一)
- 学习Lua(2) -- Lua 简单示例
- lua学习(二)----c++调用LUA
- Lua继承(Lua学习一)
- Lua单例(lua学习二)
- LUA学习(一) 初步认识lua
- lua语言学习——入门之环境搭建(纯lua)
- tomcat启动报错解决
- spring事务的几种传播特性和事务的隔离级别
- mysql之sql语法基本使用
- 聚簇索引(Clustered Index)和非聚簇索引 (Non- Clustered Index)
- Matlab中模糊控制器的使用
- 小白学习之((Lua 05))
- Go项目的目录结构
- Spark -11:Spark Submit提交历史应用程序删除
- hadoop安装以及配置
- python3的基础语法
- 单片机中的内存、flash、数据他们的概念及区别
- mac微信备份路径
- Android开发仿360设置自定义控件设置界面按钮
- 第一行代码笔记 系统自带 媒体播放 音频播放MediaPlayer 视频播放VideoView