
LUA
rheostat
搬代码,筑程序
展开
-
lua元表学习
元表(metatable)是 Lua 里每种类型的值的默认操作方式的集合,例如,数字可以加减乘除、字符串可以连接合并、table 可以插入一对 key-value 值、函数可以被调用等等,这些操作都遵循其预定义的行为来执行。而值的默认操作方式不是一成不变的,可以通过元表来修改其行为表现,或者是新定义一些默认没有的操作。例如,当两个 table 相加时, Lua 会检查它们之间的元表里是否有 "转载 2013-12-10 00:07:41 · 912 阅读 · 0 评论 -
lua C Api 简介
http://www.cnblogs.com/stephen-liu74/archive/2012/07/18/2433428.html Lua是一种嵌入式脚本语言,即Lua不是可以单独运行的程序,在实际应用中,主要存在两种应用形式。第一种形式是,C/C++作为主程序,调用Lua代码,此时可以将Lua看做“可扩展的语言”,我们将这种应用称为“应用程序代码”。第二种形式是Lua具有控转载 2014-01-26 16:13:01 · 1214 阅读 · 0 评论 -
LUA 类型转换
tonumber (e [, base])Tries to convert its argument to a number. If the argument is already a number or a string convertible to a number, thentonumber returns this number; otherwise, it returnsni原创 2013-12-26 13:51:20 · 5499 阅读 · 0 评论 -
Windows 下编译安装lua
Windows 下编译安装lua1. 首先装了个MinGW2. 编译lua用MinGW编译 mingw32-make generic3. 编译完后,看src目录下就出现了lua.exe,liblua.a,luac.exe,完事原创 2013-12-24 14:15:27 · 1383 阅读 · 0 评论 -
Windows下使用第三方lua库
第三方库lua和dll文件可以直接放在lua解释器目录下,> print(package.cpath)D:\lua-5.2.3\src\?.dll;D:\lua-5.2.3\src\loadall.dll;.\?.dll> print(package.path)D:\lua-5.2.3\src\lua\?.lua;D:\lua-5.2.3\src\lua\?\init.lua;D:原创 2013-12-24 15:18:46 · 3333 阅读 · 0 评论 -
Lua常见问题回答 Lua FAQ non-official
Lua常见问题回答 Lua FAQ non-official 1,学习lua需要什么基础?很显然,lua不适合作为你第一个编程语言,因为它需要比较深的c语言编程基础,而且对于数据结构有一定的了解,最关键的是它的功能函数并不完整,需要很多额外第三方支持,比如最基本的socket。所以学习lua最好有c或者c++的基础。2,学习lua应该看什么文档?最好从Programming转载 2013-12-19 11:29:07 · 1037 阅读 · 0 评论 -
lua递归函数中变量
需要声明为局部变量local var = xxx如果声明为var = xxx,则可能被递归函数改变,导致出错原创 2013-12-18 15:30:50 · 1836 阅读 · 0 评论 -
关于lua table是否为空的判断
关于lua table是否为空的判断 在项目的脚本lua中经常有这样的需求,1、local a = {}2、对a进行处理3、对a是否为空表进行判断关于对a是否为空表的判断,我发现有些代码如此做:if a == {} then这样的结果就是a == {}永远返回false,是一个逻辑错误。因为这里比较的是table a和一个匿名t转载 2013-12-16 16:46:53 · 3895 阅读 · 0 评论 -
lua 库路径
很多LUA的模块:包含C动态库和lua封装代码两部分C动态库必须放在C库路径下,Lua封装代码需放在Lua库路径下可以通过以下命令来查看C库路径和Lua库路径:print("C path:", package.cpath)print("Lua path:", package.path)原创 2013-12-12 16:26:43 · 4886 阅读 · 0 评论 -
lua table操作实例详解
lua table操作实例详解lua_gettablelua_getglobal(L, "mytable") lua_pushnumber(L, 1) lua_gettable(L, -2) lua_settablelua_getglobal(L, "mytable") lua_pushnumber(L, 1) l转载 2013-12-09 14:55:49 · 5443 阅读 · 0 评论 -
Lua C module 注意事项
lua脚本中的C module必须采用动态链接库的形式.如果lua脚本再被c程序调用,c程序和CModule都必须动态链接lua库,(如果采用静态链接的方式,会报multiple Lua VMs detected错误,认为启动了两个lua虚拟机)。这样,就需要把lua编译成动态链接库,而lua默认提供的makefile没有编译动态链接库,不知道为啥,具体修改(红色部分)如下:1原创 2014-01-26 16:02:28 · 3460 阅读 · 0 评论