Lua
似水流年1990
这个作者很懒,什么都没留下…
展开
-
一个关于编解码格式的问题
C++服务端其中text.ini文件用notepad++打开,看右下角如下则表明此文件为GB2312编码,客户端解析时也要用此编码格式解析std::string strFilePathName = "C:/Test/text.ini";std::ifstream ifs(strFilePathName);std::stringstream sstr;sstr << ifs...原创 2019-11-22 15:34:28 · 165 阅读 · 0 评论 -
Lua之实现一个随机数摇号实现
function sleep(n) local t0 = os.clock() while os.clock() - t0 <= n do endendfunction outPutTips() print("摇奖正在进行中...") for i=3,1,-1 do local str = string.format("倒数%d...",i) print(str) ...原创 2019-09-16 19:41:29 · 507 阅读 · 0 评论 -
Lua之单例模式实现(利用rawset rawget函数)
function my.addInstance(cls) local instance = '_instance' rawset(cls, instance, nil) function cls:getInstance(...) if not rawget(self, instance) then rawset(self, instance, self:cr...原创 2019-09-11 16:46:46 · 474 阅读 · 0 评论 -
Lua 之__index、__newindex、rawset、rawget 的使用
__index元方法这是 metatable 最常用的key。当你通过key来访问 table 的时候,如果这个key没有值,那么Lua就会寻找该table的metatable(假定有metatable)中的__index key。如果__index包含一个table,Lua会在该table中查找相应的key。如果__index包含一个函数的话,Lua就会调用那个函数,《table和键》会...转载 2019-09-11 14:29:40 · 264 阅读 · 0 评论 -
cocos creator组件化开发 对比 cocos studio +cocos2dx开发
相对于使用cocos studio + cocos2dx开发模式,使用cocos creator的组件化开发更为高效和简洁以按钮myButton节点的点击音效为例:1:cocos studio + cocos2dx 步骤如下(Lua语言):需要实现监听函数local function clickMyButton() --播放音效end并为myButton添加监听事件...原创 2019-09-05 10:39:06 · 2141 阅读 · 0 评论 -
Lua语言之数据类型的几个注意点
Lua语言中,false和nil为假,其他情况都为真(即0也是真)原创 2019-09-04 09:35:26 · 342 阅读 · 0 评论 -
TypeScript与Lua语法写法的区别
Lua脚本语言使用table模拟面向对象编程local 局部变量声明nil 表示一个无效值(在条件表达式中相当于false)Lua 把 false 和 nil 看作是"假",其他的都为"真"self.对象自己调用数组下标索引从1开始关系运算符==~=逻辑运算符 and or not条件语句if ratio <= 1.34 thenelseif ratio &...原创 2019-08-12 20:03:44 · 1819 阅读 · 0 评论 -
Lua之游戏开发cocos2dx中的自带class类详解
使用Cocos2d进行开发时,Cocos2d已经为我们封装好了一个Lua函数库,包括一个面向对象的Class实现此class实现位于cocos\cocos2d\functions.lua中根据我写的上一篇文章详细阐述了Lua实现面向对象的过程,对此class进行解析,加深理解function class(classname, ...) local cls = {__cname = c...原创 2019-07-26 20:54:13 · 1193 阅读 · 0 评论 -
Lua之实现面向对象的封装,继承,多态 详解
local Class = {x=0,y=0}--设置类的__index为自己,当用此Class作为元表的实例若在自己的属性和方法中找不到,--将会在其元表Class的元方法键__index对应的元方法Class查找Class.__index = Class function Class:new(x,y) local instance = {} --初始化instance,如果没有...原创 2019-07-26 20:32:49 · 954 阅读 · 0 评论 -
Lua之利用闭包特性实现类似for循环中ipairs的迭代器函数
local function iterator(t) local i = 0 local n = #t return function() i = i + 1 if i <= n then return t[i] end endendlocal testTable = {"a","b...原创 2019-07-25 20:28:10 · 260 阅读 · 0 评论 -
Lua语言之闭包详解
词法定界:当一个函数内嵌套另一个函数的时候,内函数可以访问外部函数的局部变量,这种特征叫做词法定界闭包:通过调用含有一个内部函数加上该外部函数持有的外部局部变量(upvalue)的外部函数(就是工厂)产生的一个实例函数local function test() local i=0 return function() i= i+1 return i...原创 2019-07-25 19:55:05 · 220 阅读 · 0 评论 -
Lua语言之for循环详解
Lua 编程语言中 for语句有两大类::数值for循环泛型for循环(1)数值for循环:for var=exp1,exp2,exp3 do<执行体>endvar 从 exp1 变化到 exp2,每次变化以 exp3 为步长递增 var,并执行一次 “执行体”。exp3 是可选的,如果不指定,默认为1。如:for i=10,1,-1 do print(i)...原创 2019-07-25 19:36:05 · 8416 阅读 · 0 评论 -
Lua语言之元表(metatable),元方法详解
**(1)**元表作为一个表,可以拥有任意类型的键值对,其真正对被设置的表的影响是Lua规定的元方法键值对。**(2)**这些键值对就是Lua所规定的键,比如__index,__add,__concat等等。这些键名都是以双下划线__为前缀。其对应的值则为一个函数,被称为元方法(metamethod),**(3)**这些元方法定义了你想对表自定义的操作。如:__index键,在Lua中它所对应...原创 2019-07-25 12:48:38 · 446 阅读 · 0 评论 -
Lua之.与:详解(以一个简单的类实现调用解析)
local function classT(className,...) local cls = {} cls.__className = className cls.ctor = function (...) --默认构造函数 end cls.new = function (...)--------------------(4) ...原创 2019-07-24 20:50:50 · 497 阅读 · 0 评论 -
Lua中实现类的原理
(1):metatable的中文名叫做元表。它不是一个单独的类型,元表其实就是一个表。(2):元表作为一个表,可以拥有任意类型的键值对,其真正对被设置的表的影响是Lua规定的元方法键值对。这些键值对就是Lua所规定的键,比如__index,__add,__concat等等。这些键名都是以双下划线__为前缀。其对应的值则为一个函数,被称为元方法(metamethod),这些元方法定义了你想对表自...转载 2019-07-15 20:30:06 · 503 阅读 · 0 评论