Lua
Amy_LLJ
这个作者很懒,什么都没留下…
展开
-
C++ lua 交互的 AES加密
背景:当前开发中,lua中有需要用到aes加密的需求,底层c++是有aes模块的,但是程序一直没有用到,我修改了一番。两点:加密,解密梳理流程:加密:字符串输入,秘钥输入,16的倍数不足的补N(N为不足的位数,例:12个字符串,缺4个,后面4个全部补4),AES加密,加密完成,base64再加密,输出解密:密码输入,秘钥输入,base64解密,16的倍数不足的补N(N为不足的...原创 2020-02-15 23:26:34 · 2081 阅读 · 0 评论 -
cocos2dx cjson解析
日常cocos2dx+lua 我们利用的是lua 的json解析,但是有个缺点,是太卡,效率太低。出于这个考虑,我们可以将json放在c++层运行,lua中调用,提高解析效率。cocos2dxlua本身,就自带了json的解析功能,在c++中,名叫:cjson、、、、我们只需将这个类导入,并在lua中注册调用即可操作步骤:1、2、3、我们可以搜索到,在c++的A...原创 2020-01-13 09:40:42 · 616 阅读 · 0 评论 -
lua c++ 交互 AsyncTaskPool 补全
问题:程序中需要用到线程池AsyncTaskPool ,但是lua里面调用的接口,源码并没有补全解决思路:源码中方法已经帮我们写好,但是里面的实现是没有的,利用c++和lua的交互,自己去补全解决代码:方法:lua_cocos2dx_AsyncTaskPool_enqueue以4个参数的作为例子详情1:这里存在一个问题,因为这个方法实际是有...原创 2019-08-15 10:38:22 · 358 阅读 · 0 评论 -
lua 无需重新登录和编译,重新打开页面及时刷新
问题:我们有时在开发中,一个lua修改以后,要重新登录或者重新打开编译器,才生效,反反复复效率很低解决思路:我们能够使用.lua是因为调用了require("这里是我们要用的lua文件路径"),而require使用的时候,是返回的package.loaded里面的,里面有->返回 ,里面没有->加载,存储,再返回,那咱们只需要让这里不存储,每次都重新加载即可实现...原创 2019-07-26 17:09:54 · 654 阅读 · 0 评论 -
lua 可变参数的运用
lua中...在参数列表中意为"可变参数",这个可变是指,通过这个可以输入很多参数,但是不需要一一列举出来!~例子:function a(...)for k ,v in pairs(...) doprint("this is print=",k,v)endendlocal at = a(101,202,303,404)print(at)原创 2017-04-01 08:38:56 · 2657 阅读 · 0 评论 -
Lua中调用.和:的区别
在Lua中,我们经常可以看到用.调用函数和用:调用,那么这两个到底有什么区别呢?例子:1-------function PromoTion:addRightCell(info) self.selectId = info.id //这里是给 self.selectId赋值 self:updateRightCell()//这里开始调用函数,注意是用:调用了原创 2017-03-24 09:49:50 · 1076 阅读 · 0 评论 -
Lua __index __newindex rawset解释
含义:1、__index (理解一点:就是在表里查找key)设置以后在找元素时会在元表里找,顺序为-1、主表里找key,key不到执行-2-2、元表里找key,若key没有,则返回nil,有并且是表再执行-1,有不是表则直接返回2、__newindex(用于修改和添加key)设置在找不到元素以后在表里添加,具体看代码3、rawset这是忽略__index具体用法原创 2017-03-13 10:20:12 · 413 阅读 · 0 评论 -
Lua下载安装
1. 登陆官网下载源码 -> www.lua.org -> get started -> installing 选择系统类型(这里是Windows的,所以下载 luaDist)2. 下载以后, 解压,假如解压到 D:\Lua\LuaDist0.9.8 (以下均以此路径为例)3. 将 D:\Lua\LuaDist0.9.8\bin 添加到系统的路径中, 我的电脑-> 高级系统设原创 2017-02-27 14:02:17 · 2687 阅读 · 0 评论 -
Lua基础需要注意的问题
在lua的简单学习语法上,以下是需要我们注意的1、if语句后面跟then关键字(不管是if、if else、if嵌套),if的条件语句后面一定要加上then关键字,结束以后加上end关键字形如:if(a>b)thenreturn aelsereturn bend2、while,for循环语句后面要加上do关键字,结束同样要加end关键字形如:for a,原创 2017-02-28 15:39:29 · 671 阅读 · 0 评论