lua
guang11cheng
这个作者很懒,什么都没留下…
展开
-
lua常用函数
void lua_setglobal (lua_State *L, const char *name);Pops a value from the stack and sets it as the new value of global name.void lua_register (lua_State *L, const char *name,原创 2011-12-02 17:32:44 · 1487 阅读 · 0 评论 -
swig+lua初步(c++)
1,lua使用5.1版本,swig-2.0.9还不支持lua5.22,下载swig-2.0.9编译安装,会报一个找不到pcre的错误,需要另一个包pcre-8.32.tar.gz,先安装这个包3,将swig Example lua下的simple和functest两个例子合并,如下:// simple.cpp/* A global variable */double Foo =原创 2012-12-26 21:29:49 · 4036 阅读 · 0 评论 -
Lua中的面向对象实现探讨
元表概念Lua中,面向对向是用元表这种机制来实现的。元表是个很“道家”的机制,很深遂,很强大,里面有一些基本概念比较难理解透彻。不过,只有完全理解了元表,才能对Lua的面向对象使用自如,才能在写Lua代码的高级语法时游刃有余。lua的metatable的官方解释,1. 每个table和每个full user data都可以有自己的metatable,并可通过setmetatab转载 2012-05-08 19:56:40 · 5480 阅读 · 4 评论 -
在linux上编译tolua++-1.0.93
1,首先安装cmake2.8版本和lua5.1版本(cmake的安装直接用sudo apt-get install cmake即可,lua5.1的安装要下载源码,然后make linux,sudo make linux install。注意在安装lua之前要安装两个库:sudo apt-get install libncurses5-dev libreadline-dev ),tolua++-1.原创 2012-05-01 15:38:07 · 2820 阅读 · 1 评论 -
lua 中pairs 和 ipairs区别
lua 中pairs 和 ipairs区别标准库提供了集中迭代器,包括迭代文件每行的(io.lines),迭代table元素的(pairs),迭代数组元素的(ipairs),迭代字符串中单词的 (string.gmatch)等等。LUA手册中对与pairs,ipairs解释如下:ipairs (t)Returns three values: an itera转载 2012-12-05 17:06:02 · 596 阅读 · 0 评论 -
lua中的table
1、 table 是 lua 中最重要的数据类型。2、 table 类似于 python 中的字典。3、 table 只能通过构造式来创建例1:Lua代码 mytable = { a = 10, b = 11, c = 20, ddd = 30 } print(mytable["a"]) 注释: 1)、 table 中的每项要求转载 2012-12-05 17:05:12 · 758 阅读 · 0 评论 -
lua变量研究
--[[In Lua, Global variables are accessible via the _Gtable ...]]function tellme()for k,v in pairs(_G) doprint("[Global key]", k, "[value]", v) -- v如果是function或者table,后面的是内存地址吗?endend原创 2012-12-04 13:18:02 · 2769 阅读 · 0 评论 -
C/C++与lua互调函数的方法
1,在lua脚本中调用C/C++代码中的函数在C++中定义函数时必须以lua_State为参数, 以int为返回值才能被Lua所调用。/*typedef int (*lua_CFunction) (lua_State*L);C 函数的类型。为了正确的和 Lua 通讯,C 函数必须使用下列定义了参数以及返回值传递方法的协议: C 函数通过 Lua 中的堆栈来接受参数,参数以正序入原创 2012-03-10 21:54:07 · 8099 阅读 · 0 评论 -
tolua++绑定C/C++语言函数供lua调用
1,C/C++提供给lua的接口写在ScriptAPI_*.h和ScriptAPI_*.cpp中(根据模块可以分为多个文件)。为简化问题,要求接口参数为简单数据类型(number、string),且全部为入参,返回值只有一个,类型为int,一般表示错误码。2,如果需要的话,可以在ScriptAPI.pkg中嵌入lua代码,这些代码在调用生成的绑定接口tolua_pkgname_open时执行。原创 2012-03-14 18:21:41 · 3527 阅读 · 0 评论 -
lua作为配置文件的读取方法
struct PictureCfg{ string name; float rotation;};1,全局配置-- picture0-cfg.luaname ="dragon.png"rotation= 180// 全局配置的读取voidLoadPictureCfg(vector& rstPictureCfgVec) { PictureC原创 2012-03-11 16:40:45 · 12849 阅读 · 0 评论 -
闭包-函数式编程
看一段javascript代码:function a(){var i = 0;function b(){alert(++i);}return b;}var c = a();c();这段代码有两个特点:1,函数b嵌套在函数a内部;2,函数a返回函数b。当函数a的内部函数b被函数a外的一个变量c引用的时候(函数a中的变量i被函数b引用,函数b原创 2012-03-10 20:18:51 · 1428 阅读 · 0 评论 -
lua中的时间函数
-- 获取当前的格林尼治时间print(os.time())-- 获取当前时间的字符串表示,形如:11/28/08 10:28:37print(os.date())-- 获取当前日期的字符串表示,形如:11/28/08print(os.date("%x", os.time()))-- 获取当前时间的字符串表示,形如:10:28:37print(o原创 2013-10-10 10:39:52 · 33511 阅读 · 1 评论