
lua笔记
Erick_Lv
菜鸡互啄
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
lua笔记1 基础概念
基础概念 Lua的变量默认是全局的,如果想要清除,只需要设置为nil。没有赋值的变量也是nil。注意lua是动态语言,变量不需要声明类型,而且自动类型转换。 b = 1 print(b) b = nil print(b) b = "a" print(b) 输出: 1 nil a lua的基本数据类型: nil 只有值nil属于该类,表示一个无效值(在条件表达式中相当于false)。 bool...原创 2019-08-08 23:50:18 · 576 阅读 · 0 评论 -
Lua笔记2 变量、循环和流程控制
变量 变量使用前必须声明,lua的变量默认全局的,哪怕该变量在函数中。局部变量使用local进行声明,仅在作用域中有效。函数中声明的变量,在函数调用前是不会起作用的。 代码示例: function foo(n) a = 3 * n local b = 5 * n end print(a) print(b) foo(10) print(a) print(b) 输出结果: nil ...原创 2019-08-09 00:16:32 · 235 阅读 · 0 评论 -
Lua笔记3 函数和数组
函数 这里主要介绍可变参数函数,使用...表示可变参数函数。 function add( ... ) local s = 0 for i, v in ipairs{...} do -- {...}表示可变参数表,是局部变量 s = s + v end return s end print(add(1,2,3,4,5,6,7)) -- 累加求和 ...原创 2019-08-09 00:43:01 · 1220 阅读 · 0 评论 -
Lua笔记4 闭包、迭代器
迭代器 for的泛型部分,最简单的是利用pair进行,比如: for k, v in pairs(t) do print(k, v) end 其中k和v是变量列表,而pairs(t)是列表表达式。 我们还可以使用迭代函数完成元素的迭代,lua提供了默认的迭代函数ipairs。这里的核心在于理解迭代函数。有无状态迭代器和多状态的迭代器两种,分别给出示例。 无状态的迭代器: function su...原创 2019-08-12 23:59:23 · 234 阅读 · 0 评论 -
lua的元表、模块和面向对象
元表 lua的元表是表的一个扩展,可以简化表的一些操作。setmetatable关键字是设置元表的核心操作。 __index相当于建立索引,为查找表元素提供了方便。 Lua 查找一个表元素时的规则,其实就是如下 3 个步骤: (参考自https://blog.youkuaiyun.com/xocoder/article/details/9028347) 在表中查找,如果找到,返回该元素,找不到则继续 判断该...原创 2019-08-13 09:58:54 · 477 阅读 · 0 评论