- 简介
- 目录大纲
- 最新文档
19、Lua 调试(Debug)
Lua 提供了 debug 库用于提供创建我们自定义调速器的功能。Lua 本身并未有内置的调速器,但很多开发者共享了他们的 Lua 调速器代码。 Lua 中 debug 库包含以下函数: sethook ([thread,] hook, mask [, count]): | 序号 | 方法&用途 | | --- | --- | | 1 | debug(): 进入一个用户交互模式,运行用……
李智 - 2025年3月17日 13:30
18、Lua 错误处理
程序运行中错误处理是必要的,在我们进行文件操作,数据转移及web service 调用过程中都会出现不可预期的错误。如果不注重错误信息的处理,就会造成信息泄露,程序无法运行等情况。 任何程序语言中,都需要错误处理。错误类型有: 语法错误 运行错误 语法错误 语法错误通常是由于对程序的组件(如运算符、表达式)使用不当引起的。一个简单的实例如下: lua -- test.lua 文件 a == ……
李智 - 2025年3月17日 13:30
17、Lua 文件 I-O
Lua 文件 I/O LuaI/O 库用于读取和处理文件。分为简单模式(和C一样)、完全模式。 简单模式(simple model)拥有一个当前输入文件和一个当前输出文件,并且提供针对这些文件相关的操作。 完全模式(complete model) 使用外部的文件句柄来实现。它以一种面对对象的形式,将所有的文件操作定义为文件句柄的方法 简单模式在做一些简单的文件操作时较为合适。但是在进行一些高……
李智 - 2025年3月17日 13:30
16、Lua 协同程序(coroutine)
Lua 协同程序(coroutine) 什么是协同(coroutine) Lua协同程序(coroutine)与线程比较类似:拥有独立的堆栈,独立的局部变量,独立的指令指针,同时又与其它协同程序共享全局变量和其它大部分东西。 协同是非常强大的功能,但是用起来也很复杂。 线程和协同程序区别 线程与协同程序的主要区别在于,一个具有多个线程的程序可以同时运行几个线程,而协同程序却需要彼此协作的运行……
李智 - 2025年3月17日 13:30
15、Lua 元表(Metatable)
Lua 元表(Metatable) 在Lua table 中我们可以访问对应的key来得到value值,但是却无法对两个 table 进行操作。 因此Lua 提供了元表(Metatable),允许我们改变table的行为,每个行为关联了对应的元方法。 例如,使用元表我们可以定义Lua如何计算两个table的相加操作a+b。 当Lua试图对两个表进行相加时,先检查两者之一是否有元表,之后检查是否有……
李智 - 2025年3月17日 13:30