摘要:
I/O库用于读取和操作Lua中的文件。 Lua中有两种文件操作,即隐式文件描述符和显式文件描述符。 对于以下示例,将使用示例文件 - test.lua,内容如下所示 - -- sample test.lua -- sample2 test.lua Lua 文件打开操作使用以下语句 - file = 阅读全文
摘要:
(1)lua程序 (2)C++程序(头文件) (3)C++程序(.cpp文件) (4)C++程序(main文件) 注:程序中的注释已经很详尽,这里不在对代码进行解释。下载安装lua之后,在vs2010中还要引入相应的库。截图如下: 阅读全文
摘要:
Lua与C的交互 Lua是一个嵌入式的语言,它不仅可以是一个独立运行的程序,也可以是一个用来嵌入其它应用的程序库。 C API是一个C代码与Lua进行交互的函数集,它由以下几部分构成: 1、 读写Lua全局变量的函数; 2、 调用Lua函数的函数; 3、 运行Lua代码片段的函数; 4、 注册C函数 阅读全文
摘要:
Lua字符串库小集 1. 基础字符串函数: 字符串库中有一些函数非常简单,如: 1). string.len(s) 返回字符串s的长度; 2). string.rep(s,n) 返回字符串s重复n次的结果; 3). string.lower(s) 返回s的副本,其中所有的大写都被转换为了小写形式,其 阅读全文
摘要:
元表操作: setmetatable(table, metatable) getmetatable(table) 元方法操作: metatable.元方法 = function (可接受参数) (函数体) end 元方法: 算数运算符:__add(加法)[+]、__mul(乘法)[*]、__sub( 阅读全文
摘要:
局部定义与代码块: 使用local声明一个局部变量或局部函数,局部对象只在被声明的那个代码块中有效。 代码块:一个控制结构、一个函数体、一个chunk(一个文件或文本串)(Lua把chunk当做函数处理) 这样,可以在chunk内部声明局部函数,该函数仅在chunk内可见,并且词法定界保证了包内其他 阅读全文
摘要:
Lua 模块与包 模块类似于一个封装库,从 Lua 5.1 开始,Lua 加入了标准的模块管理机制,可以把一些公用的代码放在一个文件里,以 API 接口的形式在其他地方调用,有利于代码的重用和降低代码耦合度。 Lua 的模块是由变量、函数等已知元素组成的 table,因此创建一个模块很简单,就是创建 阅读全文
摘要:
table.sort() 原型:table.sort (table [, comp]) 解释:对一个长度为length=n的数组table排序,也就是对tab_table[1]到tab_table[n]排序,如果参数comp不省略,则它必须是一个函数,可以接收表tab_table的两个元素,并且在第 阅读全文
摘要:
Lua 迭代器 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址 在Lua中迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素。 泛型 for 迭代器 泛型 for 在自己内部保存迭代函数,实际上它保存三个值:迭代函数 阅读全文
摘要:
Lua格式化输出 我们知道lua中可以用".."连接字符串,可以起到一部分格式化字符串的作用,但是如果字符串较长或者有特殊的格式转换操作(如十六进制转换),用".."就会很繁琐且可读性差。用string.format()就是一个很好的解决方案。 函数定义string.format() 第一个参数为字 阅读全文