![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Lua
Fatestay_DC
这个作者很懒,什么都没留下…
展开
-
Lua-面向对象
--面向对象编程--lua语言一张表就相当于一个对象 可以拥有很多状态 也有一个与值无关的标识selfAccount ={balance=0}function Account.withdraw(v) Account.balance = Account.balance - vend-- 对操作的接受者进行操作 function Account.withdraw(self,v) self.balance = self.balance - venda1 = Accounta.原创 2020-05-11 15:45:45 · 145 阅读 · 0 评论 -
Lua程序设计-元表元方法
--元表和元方法--Lua中每一个值都可以有元表 Lua语言中 只能为表设置元表 如果为其他类型设置 需要通过C代码或者调试库完成--下面设置 获取元表操作local t={}print(getmetatable(t))local t1={}setmetatable(t,t1)print(getmetatable(t))print(getmetatable(t) == t1)...原创 2020-05-08 15:52:46 · 238 阅读 · 0 评论 -
Lua程序设计-迭代器
--迭代器--一种可以遍历一个集合中所有元素的代码结构--函数表述迭代器 每一次调用 函数就会返回集合的下一个元素--所有迭代器都需要在连续调用之间保存一些状态 知道当前所处位置以及如何从当前位置到下一步位置--自定义迭代器 闭包为保存状态提供了一种良好的机制--闭包就是一个可以访问其自身环境中一个或者多个局部变量的函数--这些变量连续调用过程中的值并将其保存在闭包中,从而使得闭包能...原创 2020-05-07 16:33:51 · 190 阅读 · 0 评论 -
Lua程序设计-模块和包
--模块与包 允许不同人共享代码--require加载返回一个表local m = require 'math'print(m.sin(3.14))--require函数 加载指定模块 括号可省略--加载过程 先检查在表package.loaded是否被加载 如果已经加载不会重复加载--如果未加载 就去搜索指定模块的lua文件 如果找到了使用loadfile加载 如果没 继续查找...原创 2020-05-04 14:18:42 · 259 阅读 · 0 评论 -
Lua程序设计-模式匹配
--模式匹配相关函数 --string.find 用于在指定的字符串内搜索指定的模式 返回开始索引的位置和结束索引的位置 --如果无返回nil--方法带有两个可选参数 第一个是索引指定从改位置搜索 第二个为是否是简单搜索 忽略模式简单字符串匹配local str = "hello ll"local i,j = string.find(str,'l')print(i,j)local...原创 2020-05-04 10:23:01 · 152 阅读 · 0 评论 -
Lua程序设计(2)
--八皇后 回溯法--有冲突解决冲突,没有冲突往前走,无路可走往回退,走到最后是答案--一般改类型最大为8X8local N = 8--打印出所有的解决方案 图形化描绘function PrintSolution(a) for i=1,N do for j=1, N do io.write(a[i]==j and "X" or "-",...原创 2020-04-23 17:27:24 · 139 阅读 · 0 评论 -
Lua程序设计(1)
Lua是嵌入式语言,常作为拓展嵌入在C/C++等程序中,Lua当然也是一个独立的语言。在Lua官网下载源码后编译lua.c文件可生成可执行文件lua,这就是作为独立语言时Lua的解释器(或者通过MAKEFILE生成)。独立Lua解释器包括所有标准库,包括调试库。独立解释器的参数有1. -e 可以直接在命令行输入代码;2.-l 加载库,效果与dofile函数类同。如需加载的库文件为M...原创 2020-04-23 16:37:15 · 175 阅读 · 0 评论