lua的一个坑:和.的区别

别再混用了!Lua脚本里sys.wait()和rtos.sleep()的5个关键区别与实战避坑指南 本文深入解析Lua脚本中sys.wait()与rtos.sleep()的5个关键区别,帮助开发者在嵌入式物联网开发中避免常见延时陷阱。通过对比底层机制、性能影响及典型应用场景,提供实战避坑指南,确保系统稳定性和响应速度。 阅读详情

两个.lua文件

main.lua如下

local log=require ("log")
local db=require ("dbConnect")


function test(dbInfo)
log.debug("test1################ user=%s",dbInfo.dbUser)
end


function LuaMain()
log.init("GameServer", config.logLevel)
log.setAppFlag("[GameServer] ")
log.debug("LuaMain")


dbConnectInfo=
{
dbName="xygamedb",
dbUser="root",
dbPassword="xxxxxx",
dbHost="127.0.0.1",
dbPort="3306",
}


test(dbConnectInfo)


db:test2(dbConnectInfo)
db.test2(dbConnectInfo)

end


dbConnect.lua如下

local log=require ("log")

module(..., package.seeall)


-- 内部变量定义
function test2(dbInfo)
log.debug("test2######user=%s",dbInfo.dbUser)
end


发现db:test2(dbConnectInfo)能调用到dbConnect.lua中的test2,但dbInfo.dbUser为空

而db.test2(dbConnectInfo)能得到正确的dbUser数据


不知道:和.有什么不同,如果:不可用,那为什么它又能运行到test2呢,奇怪!


一个简易版本的lua debugger实现 introduction 工欲善其事,必先利其器。lua作为一门动态语言,虽然我已经习惯了使用print来进行代码调试,但是还是有很多童鞋觉得一款好用的调试器能更好的进行lua代码编写。所以在以前接手游戏的lua结合层之后,自然就需要提供一个debuger工具了。 我们只需要的是一个能快速进行lua代码调试的工具,所以不需要gdb那种额外复杂的功能,只需要提供几种简单的功能就行了,如下 阅读详情

相关推荐

【lua实战】lua中pairs和ipairs的区别

很久以前,我在使用lua的过程中,对于pairs和ipairs的理解还处于表层,认为我了解的就是全部。 ipairs就是对表中元素进行顺序排序,pairs就是对表中元素进行随机排序。

weixin_42206314的博客 1656

Lua学习笔记之“.”和“:”的作用和用法

目录 1、博客介绍 2、内容 含义: “:”声明方法并采取“:”的形式调用: “:”声明方法并采取“.”的形式调用: “.”声明方法并采取“.”的形式调用: “.”声明方法并采取“:”的形式调用: 3、推送 4、结语 1、博客介绍 本篇博客作为Lua学习笔记之一,介绍关于方法中“.”和“:”的用法和不同含义,我们知道在声明方法的时候可以采用“.”或者“:”的写法...

孙君的空间站 5万+

lua踩坑之浅拷贝与深拷贝

lua之浅拷贝和深拷贝

森明帮大于黑虎帮的博客 2209

lua 中 . 和 : 的区别

lua 中 . 和 : 的区别 首先在lua中使用“:”定义的函数会自动传入一个名为self的变量,self同c++中的this一样,表示当前对象的指针:而“.”定义的函数中没有self.

daimou123的博客 1万+

Lua中 . 和 : 的区别及使用场景

和`:``是两个不同的操作符,它们在面向对象编程和函数调用中有着不同的用途和语义。本文将详细解释这两个操作符的区别,并为您提供相应的源代码示例。,该方法使用冒号语法定义。当我们使用冒号操作符调用方法时,Lua会自动将调用方法时的表作为第一个参数传递给方法。冒号操作符主要用于调用表中的方法,并传递表自身作为第一个参数。这种方式适用于面向对象编程中的方法调用。操作符,我们可以访问表中的字段,并获取它们的值。需要注意的是,冒号操作符只是一种语法糖,实际上它是通过。因此,我们也可以使用。在上面的示例中,我们在表。

class_class957的博客 765

2023东华大学OJ机试题22-70

东华大学计算机考研复试机试22 约瑟夫环223、整除的尾数24、回文质数25、汽水瓶26、阶乘最后的非0位27、算菜价28、 水果价格29、求奇数的乘积30、求最晚和最早日期31、素数32、计算e33 数字之和34 繁殖问题35 奇妙的数字36 整除的尾数37 黑色星期五38 树39 约瑟夫环40 最大与最小41 环42 求数列项43 最高频率44 三艘船45 回文数46 特殊四位数47 最大值48 数列149 修理牛棚50 按要求输出序列51 部落人乘法52 序列53 双重回文数54 等差数列55 人见人

m0_49263811的博客 2598

lua中.和:的区别

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34128534的博客 1424

逆变器专题(3)-锁相环-PLL

锁相环作为并网逆变器的第一道门户,其锁相的精度将直接影响逆变器是否并网成功,若锁相精度较差,则会直接导致系统的功率因数下降,产生无功等等。在有关文献中指出,提高PLL带宽可以准确且快速进行锁相,而当电网电压含有谐波时,可适当降低带宽抵制谐波的干扰。成为变化量,而如果两者旋转速度达到一致时,所在的交轴分量。ki很大,即带宽很大时,稳定裕度不够,锁相环锁不住。为交流量,当频率锁定而相位没有锁定时,即。,即控制环前馈,可实现将锁相速度的加快。控为0,则可实现系统完美锁相。mod,取余,可减少存储空间。

cyc19980105的博客 6182

在 OpenResty 开发中遇到的那些和 Lua 相关的坑。

出自 温铭 -OpenResty从入门到实战 专栏 在前面内容中,我们提到了一些 Lua 和其他开发语言不同的点,比如下标从 0 开始、默认全局变量等等。在 OpenResty 实际的代码开发中,我们还会遇到更多和 Lua、 LuaJIT 相关的问题点, 下面我会讲其中一些比较常见的。 这里要先提醒一下,即使你知道了所有的 坑,但不可避免的,估计还是要自己踩过之后才能印象深刻。当然,不同的是,你能够更块地从坑里面爬出来,并找到症结所在。 下标从 0 开始还是从 1 开始 第一个坑,Lua 的下标是从 1 开

张俊杰 的博客 1354

BK7238(XH-WB3S)固件烧录实战:从AT固件选择到稳定下载全解析

本文详细解析了BK7238(XH-WB3S)模组固件烧录的全过程,从AT固件版本选择到稳定下载的实战技巧。重点介绍了烧录前的准备工作、硬件连接的正确姿势、烧录软件的实战技巧以及疑难问题排查指南,帮助开发者高效完成BK7238模组的固件烧录。

weixin_29159441的博客 249

西门子WinCC VBS脚本实战:5分钟搞定变量记录导出到Excel(附完整代码)

本文提供了一套高效的西门子WinCC VBS脚本方案,帮助工程师在5分钟内将变量记录数据导出至Excel。方案详细解析了时区转换、数据库连接、SQL查询优化等核心难点,并附带了完整、可直接使用的VBS代码,解决了工业自动化项目中数据导出的实际痛点。

moss5的博客 609

Redis的事务和Lua之间的区别

Redis提供事务和Lua脚本两种原子操作方案。事务通过MULTI/EXEC执行命令序列,失败不影响后续命令,但需多次网络交互且不支持流程控制。Lua脚本只需一次网络交互,支持命令间结果依赖和复杂逻辑处理,但错误会中断执行。两者都确保原子性但都不支持回滚,开发者可根据网络开销、流程复杂度等需求选择合适方案。

weixin_41510616的博客 1787

【文章阅读+代码复现】Point-GNN

Brief 在3D点云语义分割方法中,GNN已经做了很多可用的方案,但是在目标检测上依旧是采用比较传统的CNN和稀疏卷积的组合,这一篇文章是研究了图卷积在3D检测的中的用法。来自卡内基梅隆大学。已经被CVPR2020接收. 这里是 paper 这里是 code Abstruct 一个采用GNN设计的3D目标检测框架 过程是先将点云场景编码成图结构,随后设计了一个叫point-GNN的网络结构,在...

有所为,有所成长 1万+

Lua中.和:的区别

首先在lua中使用“:”定义的函数会自动传入一个名为self的变量,这个变量是隐含的,self同c++中的this一样,表示当前对象的指针:而“.”定义的函数中没有self。 function class:func2( ) end function class.func1(self) end --这时候这两个函数等价 function MainScene:ctor() self:ceshi(1,2,3) end function MainScene:ceshi(a,b,c

qq_38721111的博客 1221

初探802.11协议(6)——Wi-Fi 6新特性简介

Wi-Fi 6新机制(特性)介绍

FanFF的博客 1522

车载网络测试实操源码_使用CAPL脚本实现安全访问解锁,并模拟各种测试场景

在车载诊断中,我们经常会使用到安全访问解锁,常见的场景包括软件刷写前、通过2E服务写入某个DID前、通过31服务执行某个例程前等,都必须先通过27服务进行安全访问,解锁相应安全等级后才能执行上述操作。在开发调试或测试时,有时候需要模拟正常的安全解锁、安全访问秘钥错误、连续多次请求安全访问等,手动操作极为不便。本文将介绍如何使用CAPL脚本实现安全访问解锁,并模拟各种测试场景。

文章主要涉及嵌入式软件开发、测试、项目管理等,欢迎交流,共同进步。 1201

Lua进阶用法之Lua和C的接口设计

本篇主要讲解Lua和C之间相互调用的接口设计

记录一位C++爱好者的笔记 2013

TIA博途中S7-1200进行MODBUS TCP通信(作为服务器)的具体方法演示

TIA博途中S7-1200进行MODBUS TCP通信(作为服务器)的具体方法演示

Robot_PLC_HMI_Automation 8611

lua中dofile,loadfile,require的区别

u012861978的专栏 1万+

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

在unity中,C#和lua的关系和区别

在Unity中,C#和Lua是两种不同的编程语言,通常用于不同的目的,但有时会在同一个项目中结合使用。

qq_43628537的博客 1091

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

学习Lua碰到的问题、踩坑记录

一、遍历字典是无序的 二、Lua的遍历和C#不同 三、同名传参和同名字段 四、传参是引用传递 五、rawget()和rawset() 六、在Windows上安装Lua 1.get a binary 2.选择自己电脑的版本 3.解压文件,(存放文件地址文件夹名全部不要出现中文最佳) 4.修改环境变量 5.win+R,cmd,输入lua或者lua53后如下即安装完成 6.最后intellij idea 中推荐一个EmmyLua,使用安装比较简单,在设置setting里面选择Plugins,查找EmmyLua安装

森明帮大于黑虎帮的博客 2241

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

lua 中冒号和点号的区别

lua 中冒号和点号的区别: 一、定义方法的区别 1、冒号定义方法,默认会接受self参数;而点号定义的时候,默认不会接受self参数 例: (1)冒号定义 function class:test()   --这里会接受self参数,比如   print(self.a,self.b)   在这里self就是class对象本身,因此不会出错 end (2)点号定义 function...

爱拍凯特的专栏 3307

Lua中ipairs和pairs的区别

Lua中ipairs和pairs的区别泛型foripairs的实现pairs的实现两者区别 泛型for 首先是泛型for的语法 for var-list in exp-list do body end 当执行for循环时候,泛型for会接收exp-list返回的三个值分别用作迭代函数、不可变状态和控制变量的初始值。上述步骤完成后泛型for使用不可变状态和控制变量为参数来调用迭代函数,泛型for将迭代函数的返回值赋给变量列表中声明的变量,如果第一个返回值(赋给控制变量的值)为 nil ,那么循环终止;

sunjincheng321的博客 2671

Lua中pair和ipair的区别?

显然,使用pairs能对数组内容整体遍历。而ipairs只会访问连续的数字索引内容。可见ipairs只能从索引为1的位置遍历,且只能访问连续的索引区间。之所以说是正常的数组,是因为索引是连续的,数值都是存在的,不存在nil的情况。对于索引类型为非nums的table来说,若想遍历直接使用pairs即可。而如果索引不连续,或索引类型不是num,那么二者就显现出差别。二者都是Lua中内置的迭代器,可以对数组或table进行遍历。在正常的数组或table的遍历中,二者没有区别。当然,pairs可以直接遍历咯!

aa929249的博客 1601
上一篇: 坑爹的ndk-build
下一篇: 请避免直接使用Thread
xwpcom
博客等级 码龄24年 16粉丝 60原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值