Lua中的、冒号与self,它们之间的关系主要体现在函数的定义与调用上,Lua在函数定义时可以用也可以用冒号,如: 1 function mytable.fun(p) 2 return p 3 end 4 5 function mytable:fun(p) 6 return p 7 end 用冒号定义的函数有个特别的地方是它内部有个self表示自身可以直接访问(虽然sel
转载 2月前
22阅读
条件语句判断时,只有false和nil会导致判断为假,其他的任何值都为真。 Lua 的字符串与编码无关; 它不关心字符串中具体内容。标准 Lua 使用 64 位整数和双精度(64 位)浮点数, 但你也可以把 Lua 编译成使用 32 位整数和单精度(32 位)浮点数。 以 32 位表示数字对小型机器以及嵌入式系统特别合适。table 是一个关联数组, 也就是说,这个数组不仅仅以
转载 6月前
40阅读
前面两篇我们对性能做了一个优化,接下来继续来丰富调试器的特性。我们前面提到过,函数内并不是所有行都是有效行,空行和注释行就不是有效行。我们之前在添加断点的时候,并没有对行号进行检查,任何行号都能成功添加断点。所以如果添加的断点行号是无效的,那么永远也不会断到那里。但是钩子里并不知道它是无效的,call事件仍然会以为函数有断点从而启动line事件,造成CPU的浪费。所以本篇,我们将对断点的行号进行检
转载 4月前
26阅读
一、简介  最近马三在工作中经常使用到了lua 中的 os.date( ) 和 os.time( )函数,不过使用的时候都是不得其解,一般都是看项目里面怎么用,然后我就模仿写一下。今天正好稍微有点空闲时间就好好地收集了一下相关资料并学习了一下,并将学习结果记录成此博客。二、os.time和os.date函数说明1.os.time()函数  os.time()的函数原型与Lua官方的解释如下:   
转载 3月前
182阅读
time和date两个函数在Lua中实现所有的时钟查询功能。函数time在没有参数时返回当前时钟的数值。(在许多系统中该数值是当前距离某个特定时间的秒数。)当为函数调用附加一个特殊的时间表时,该函数就是返回距该表描述的时间的数值。这样的时间表有如下的区间: year a full year month 01-12 day 01-31 hour 01-31 min 00-59 sec 00-59
lua 日期时间                                
需求与场景分析在游戏前端开发中,我经常遇到把时间格式化成多种格式在不同UI上显示的需求。又或者是不同功能需要显示不同格式的时间。最多的就是对服务器返回的一个剩余时间秒数进行倒计时的显示,例如活动剩余时间、某些操作的CD时间等。 下面列举一些常要用到的显示格式:12:05:0312小时05分钟03秒12时05分03秒剩余0天12时5分5秒50分05秒 (当小时小于0时不显示) 就先列举5个,在同一个
os.time ([table])不带参数则返回当前时间.(在许多系统中该数值是当前距离某个特定时间的秒数。)      说明:当为函数调用附加一个特殊的时间表时,该函数就是返回距该表描述的时间的数值。这样的时间表有如下的区间:12:00:00)。如果是在里约热内卢(格林威治向西三个时区)的一台Unix计算机上(相对时间为1970年1月1日,00:00:00
Lua编程中,经常会看到有时用点号定义一个table的成员函数,有时却用冒号,在调用的时候也是如此。那么点号和冒号在使用上有什么区别呢?它们与self之间又是什么样的关系呢?稍安勿躁,接下来谜底将一一为你揭开。 下面先看一个例子Class = {} Class.__index = Class function Class.new(x,y) local cls = {}
LUA全总结 ------------------------------------------------------------------------------ --2018.7.21 do --开启或关闭print xprint = print set_print = function(yes) print = yes and xprint or
Lua 中,函数 time、date 和 difftime 提供了所有的日期和时间功能。在 OpenResty 的世界里,不推荐使用这里的标准时间函数,因为这些函数通常会引发不
原创 7月前
73阅读
os.date()原型:os.date ([format [, time]])解释:返回一个按format格式化日期、时间的字串或表。省略time会使用当前时间作为time两个参数都省略则按当前系统的设置返回格式化的字符串,做以下等价替换 os.date() <=> os.date(“%c”)如果format以 “!” 开头,则按格林尼治时间进行格式化。如果format是一个 “t”
Protocol Buffer是Google开源的一个他们自己内部RPC和数据存储的一种格式。在消息协议处理上有很多优势。主要是数据存储速度快,消耗资源少。具体的protocol buffer的数据存储原理还有和类似xml,json的性能对比之类的,网上也有很多文章了,在这里我就不详细写了。由于protocol buffer在性能上的优势和消息上的便利性,也常常被用于游戏开发中,常见
function class(...) -- 返回的表类似“类”的定义 local cls = {} -- 数据都存储在这里面,用作数据存储空间 local data = {} -- 复制传入...的的成员。传入的...类似类定义中的成员列表。需要将父类,以及...内的成员都复制过来 local function copyField(src, de
姑且我们把这种技术叫做代码模版吧,对于 C 程序员,则更接近于宏替换,C++ 程序员看来可能是一个高级 template 技巧。不过 lua 能做的更强一些。我来演示一下,代码模版的上下文变量。| ALPHA = math.pi / 4 | function foo(a) return a * math.sin(|ALPHA|) end这个例子里,一开始给代码模版变量 ALPHA 赋了值为 pi/
虚变量,Require函数
转载 2020-05-28 07:49:00
314阅读
2评论
Lua—一些Lua的基础语法知识 三分有点码。#三分有点码 博主整理了一些关于Lua的基础语法知识,注释了自己的理解,希望能够帮助到大家。一、table表 1.table的定义以及取值 table的索引是从1开始,与其他语言不同,当索引越界会报nil错误,赋值方法和数组一致 nil也可占位,改索引的value为nil 1>.索引存储(数组) local mytable={1,2,3}
OpenResty 获取时间的函数 函数 类型 描述 ngx.today() 缓存时间 从 nginx 的时间缓存(不像 Lua 的日期库,该时间不涉及系统调用)返回当前的日期 (格式: yyyy-mm-dd )。
转载 5月前
474阅读
Rime输入法通过定义lua文件,可以实现获取当前时间日期的功能。 1.TIMERime是一款可以高度自定义的输入法,相关教程可以查看往期文章,关于时间获取是指输入一个指定关键字,输出当前时间,效果如下(我定义了time关键字):实现如下:①在用户文件夹中新建一个rime.lua文件加入如下代码time_translator = require("time")②在用户文件夹下新建文件夹L
1.农历Rime是一款可以高度自定义的输入法,前文讲述了time,date,week的定义方式现介绍获取当前农历时间的配置,效果如下(我定义了lunar关键字):实现如下:①在用户文件夹中新建一个rime.lua文件加入如下代码lunar_translator = require("lunar")②在文件夹Lua中新建文件lunar.lua(此处的文件名必需与上文require中的内容相同),加入
  • 1
  • 2
  • 3
  • 4
  • 5