函数的用途:
1.完成指定的任务,这种情况下作为调用语句使用。
2.计算并返回值,这种情况下,函数作为赋值语句的表达式使用。
函数的参数为空,必须使用()表示函数调用。例外:当函数只有一个参数,并且这个参数是字符串或表构造时,()是可选的。
lua提供了面向对象调用函数的语法
o:foo(x)与o.f(o,x)是等价的。
lua函数的实参与形参的匹配与赋值语句类似,...
分类:
其他好文 时间:
2014-09-21 01:14:09
阅读次数:
283
Lua是一种简单、可扩展、高效的脚本语言,被广泛应用于各种领域,如嵌入式系统、移动设备、Web服务器、有效。
Lua一开始就被设计成能与C语言或其他语言编写的软件相互集成。而Lua并不像C那么全面,但提供了C不太擅长的特性,例如对硬件的高级抽象、动态结构、无冗余、简易的测试和调试。另外,Lua还实现了一个安全的运行环境、一套自动内存管理机制、优秀的字符串处理能力和动态大小数组的处理能力。...
分类:
其他好文 时间:
2014-09-20 22:39:59
阅读次数:
200
Lua中字符串可以使用""或'',类似Javascript中的用法
> ="sdfdsf"
sdfdsf
> ='sfdd'
sfdd
> ='abc"'
abc"
> ="abc'"
abc'
同Java、Python一样,Lua的字符串是不可修改的值,可以通过string.gsub函数来替换字符串中的子串:
> s = string.gsub('abc de...
分类:
其他好文 时间:
2014-09-20 22:37:29
阅读次数:
254
Lua 中的每个值都可以用一个 metatable。 这个 metatable 就是一个原始的 Lua table , 它用来定义原始值在特定操作下的行为。 你可以通过在 metatable 中的特定域设一些值来改变拥有这个 metatable 的值 的指定操作之行为。 举例来说,当一个非数字的值作...
分类:
其他好文 时间:
2014-09-20 18:29:39
阅读次数:
257
在游戏脚本开发中,我们往往会发现脚本量非常大,而且我们经常会在一下核心脚本文件中定义一些常用的功能函数,但是Lua脚本没有提供include关键词,那又是怎样调用外部函数的呢?如何实现脚本的Include功...
分类:
其他好文 时间:
2014-09-20 15:39:39
阅读次数:
213
这里, 简单的记录一下lua中闭包的知识和C闭包调用前提知识: 在lua api小记2中已经分析了lua中值的结构, 是一个 TValue{value, tt}组合, 如果有疑问, 可以去看一下一些重要的数据结构 lua中有两种闭包, c闭包和lua闭包 两种闭包的公共部分: #define Clo...
分类:
其他好文 时间:
2014-09-19 13:34:55
阅读次数:
201
1. 创建lua虚拟机lua_State *lua_newstate (lua_Alloc f, void *ud)创建一个新的独立的lua虚拟机. 参数指定了内存分配策略及其参数, 注意, 让用户可以定制内存分配策略是十分有用的, 比如在游戏服务器端使用lua, 我做过一次统记lua在运行的时候会...
这些东西是平时遇到的, 觉得有一定的价值, 所以记录下来, 以后遇到类似的问题可以查阅, 同时分享出来也能方便需要的人, 转载请注明来自RingOfTheC[ring.of.the.c@gmail.com]打算记录一些lua_api, 可能会觉得lua文档中已经说的很清楚了, 但是我将用自己的方式,...
题记:闭包是许多语言都支持的特性,像javascript,lua等。对闭包函数有所了解的童鞋可能都会感叹闭包函数似乎做到了其他普通函数未能做到的事情。普通函数内部可以直接读取全局变量。如:local n = 1function f1( ... ) return nendprint(f1()) ...
分类:
其他好文 时间:
2014-09-18 16:26:34
阅读次数:
162
为什么要拿出来 Lua2.4 来看一下呢? ? 因为 Lua2.4 的时候增加了一个的外部编译器 luac,可以把 Lua 脚本编译成字节码。解释器可以直接执行编译好的字节码,加载速度得到了提升。这里主要是想看一下编译器是如何...
分类:
其他好文 时间:
2014-09-18 13:24:24
阅读次数:
197