• Lua教程(十): 全局变量和非全局的环境

    Lua教程(十): 全局变量和非全局的环境

    Lua将其所有的全局变量保存在一个常规的table中,这个table被称为“环境”。它被保存在全局变量_G中。1. 全局变量声明:Lua中的全局变量不需要声明就可以使用。尽管很方便,但是一旦出现笔误就会造成难以发现的错误。我们可以通过给_G表加元表的方式来保护全局变量的读取和设置,这样就能降低这种笔...

    kavinkavin 2018.05.20 2809浏览 0
  • Lua教程(九):元表与元方法详解

    Lua教程(九):元表与元方法详解

    Lua中提供的元表是用于帮助Lua数据变量完成某些非预定义功能的个性化行为,如两个table的相加。假设a和b都是table,通过元表可以定义如何计算表达式a+b。当Lua试图将两个table相加时,它会先检查两者之一是否有元表,然后检查该元表中是否存在__add字段,如果有,就调用该字段对应的值。...

    kavinkavin 2018.05.20 2500浏览 0
  • Lua教程(八):数据持久化

    Lua教程(八):数据持久化

    1. 数据文件:我们可以利用Lua中table的构造式来定义一种文件格式,即文件中的数据是table构造并初始化的代码,这种方式对于Lua程序而言是非常方便和清晰的,如:    Entry { "Stephen Liu&...

    kavinkavin 2018.05.20 2273浏览 0
  • Lua教程(七):数据结构详解

    Lua教程(七):数据结构详解

    Lua中的table不是一种简单的数据结构,它可以作为其它数据结构的基础。如数组、记录、线性表、队列和集合等,在Lua中都可以通过table来表示。       1. 数组:使用整数来索引table即可在Lua中实现数组。因此,Lua中的数组没有固定的大小,如...

    kavinkavin 2018.05.20 2591浏览 0
  • Lua教程(六):编译执行与错误

    Lua教程(六):编译执行与错误

    1. 编译:Lua中提供了dofile函数,它是一种内置的操作,用于运行Lua代码块。但实际上dofile只是一个辅助函数,loadfile才是真正的核心函数。相比于dofile,loadfile只是从指定的文件中加载Lua代码块,然后编译这段代码块,如果有编译错误,就返回nil,同时给出错误信息,...

    kavinkavin 2018.05.20 2537浏览 0