【lua】常见lua报错类型——自用收藏
类型1,索引nil值
- attempt to index a nil value (global ‘a’)
试图引用一个空值 - attempt to index a nil value (field ‘name’)
这里的Aa是数字类型,无法用.
去引用
Aa = 1
Aa.name ="hah" --试图引用一个空值
Aa.name.first = "haha" --Aa
- attempt to perform arithmetic on a nil value (global ‘a’)
试图用一个空值进行计算
a=nilprint(a+1)
类型2,数学计算,逻辑运算中有nil值
- attempt to perform arithmetic on a nil value (global ‘a’)
试图用一个空值进行计算
a=nilprint(a+1)
- attempt to perform bitwise operation on a nil value (global ‘a’)
试图用空值进行位运算
a=nilprint(a & 1)
- attempt to perform arithmetic on a nil value (field ‘b’)
试图用一个不存在的引用进行计算
a = {}
print(a.b &1)
类型3、调用nil值
- attempt to call a nil value (global ‘a’)
设置a为空,将其以函数的形式调用
a=nil
a()
- attempt to call a nil value (field ‘b’)
调用不存在的子属性或者函数
a={}
a.f()
类型4、数学计算、位运算中使用非数字类型
- attempt to perform arithmetic on a string value (global ‘a’)
试图用非数字类型进行计算
a="str"
print(a+1)
- attempt to perform arithmetic on a table value (global ‘a’)
试图利用table类型进行数学计算
a = {}
print(a+1)
- attempt to perform arithmetic on a string value (field ‘s’)
企图用某个变量的字符子属性进行数学运算
a = {s="str"}
print(a.s + 1)
- attempt to perform arithmetic on a table value (field ‘s’)
试图对某个table类型的子属性进行计算,类似于2
a = {s={}}
print(a.s + 1)
类型5、数量限制
- stack overflow (函数调用栈超限 LUAI_MAXSTACK 1000000)
function a() b() endfunction b() a() enda()
- upvalue数量限制
lua的upvalue是有上限的,这个上限定义在luaconf.h中:
如果local变量太多,还是放到table里面吧
#define LUAI_MAXUPVALUES 60
参数个数限制
局部变量个数限制
#define LUAI_MAXVARS 200
- 字符串拼接个数限制
lua三种字符串拼接性能分析
参考网址:
常见lua报错类型
【lua】常见lua报错类型——自用收藏相关推荐
- Unity中常见的报错类型
笔记来自Unity中文课堂<Unity开发过程中常见的报错与Debug> 1.Cant add script,不能添加脚本 1.Unity中脚本的文件名称必须和脚本内的class名称一致 ...
- unity lua C# 这边 new 了一个GameObject 对象并发给Lua那边, 这时C# 这边在通过GC释放掉这个对象;lua 那边会报错;遇到这种问题的解决方案
C# 这边 new 了一个GameObject 对象并发给Lua那边, 这时C# 这边在通过GC释放掉这个对象:lua 那边会报错:遇到这种问题的两种方式 解决方案: 1.lua一个 sprite对象 ...
- 前端JavaScript 常见的报错及异常捕获与处理方法
前言 在开发中,有时,我们花了几个小时写的js 代码,在浏览器调试一看,控制台一堆红,瞬间一万头草泥马奔腾而来. 至此,本文主要记录js 常见的一些错误类型,以及常见的报错信息,分析其报错原因,并给予 ...
- Python爬虫总结——常见的报错、问题及解决方案
Python爬虫基础--HTML.CSS.JavaScript.JQuery网页前端技术 Python爬虫基础--正则表达式 Python爬虫基础--re模块的提取.匹配和替换 Python爬虫基础- ...
- JavaScript在控制台常见的报错信息
JavaScript在控制台常见的报错信息 前言 一.JS的报错类型 二.具体的控制台报错分析 1.语法错误(SyntaxError) (1)违背命名规范 (2)括号不全 (3)关键字赋值 (4)函数 ...
- vue-cli打包构建时常见的报错解决方案
vue-cli打包构建时常见的报错解决方案 参考文章: (1)vue-cli打包构建时常见的报错解决方案 (2)https://www.cnblogs.com/bester-ace/articles/ ...
- linux 编译报错 not a directory,Linux常见英文报错中文翻译
Linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permission ...
- Linux常见英文报错中文翻译(菜鸟必知)
Linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permission ...
- linux运维常见英文报错中文翻译(菜鸟必知)
linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permissio ...
最新文章
- 五分钟搭建一个基于BERT的NER模型
- java 对 mysql 最简配置
- 《高性能javascript》读书笔记
- 如何用函数表示数(四)数的彻底消失
- 加速SaaS规模化演进,餐道基于K8s的云上创新底座
- 35 岁程序员的独家面试经历
- mega x_[MEGA DEAL]通过Hadoop Bundle掌握大数据(91%的折扣)
- AngularJS获取项目中定义的json文件
- 通过设置proxyTable实现调用接口跨域
- 在CNN网络中roi从原图映射到feature map中的计算方法
- java list 超出范围_java.sql.SQLException参数索引超出范围(1参数个数,即0)
- python与数据挖掘课后实验答案_数据仓库与数据挖掘课后习题答案
- 计算机视觉前沿技术探索
- OpenEmbedded 中文手册
- 用html数据库搭建信息管理系统,数据库的建立和系统模块功能的实现.doc
- 海南信用社计算机试题,2018海南农村信用社考试 计算机 模拟试卷六答案
- 前端程序员开发技术栈(前端干货)
- matlab迭代分水岭分割,matlab分水岭分割算法
- 拨号盘拨号数字间距太小 调大 修改通讯录里面收藏和所有联系人字体颜色
- AI人脸识别的实现SDK
热门文章
- GOM引擎玩家组队触发功能脚本,新开传奇创建小组时触发的教程说明
- 四节1.5V的5号电池、一个电容、一个12V的报警蜂鸣器、铜线和螺母,在螺母所栓的铜线触发接通电源后,缓慢放电10秒,制作一个简易震动报警器,需要用什么样的电容合适?...
- Golang的包管理工具govendor 安装与使用
- php web应用开发娄不夜,PHP Web应用开发
- 软件单元测试文档,软件单元测试报告_模板.doc
- Unity 2D -- Ruby Adventure 学习笔记
- 网络编程套接字(Socket编程)
- c语言链表ppt,C语言链表ppt课件.ppt
- 《构建之法,邹欣》阅读笔记
- 系统分析师-案例题 文老师知识点