Lua
little_two_two
这个作者很懒,什么都没留下…
展开
-
Lua学习之【2】:全局变量、关键字、类型
1、全局变量dddd原创 2014-10-21 22:01:34 · 1781 阅读 · 0 评论 -
Lua元方法的使用
Set = {}Set.mt = {}function Set.new( t ) local set = {} setmetatable( set, Set.mt ) for _, l in ipairs(t) do set[l] = true end return setendfunction Set.union( a, b ) if getmetatable( a )原创 2016-08-11 12:37:16 · 364 阅读 · 0 评论 -
Lua元表的使用
Window = {}Window.prototype = {x = 0, y = 0, width = 100, height = 200,}Window.mt = {}function Window.new( o ) setmetatable( o, Window.mt ) return oendWindow.mt.__index = function ( table,原创 2016-08-11 12:39:12 · 305 阅读 · 0 评论 -
luaL_ref与lua_rawgeti的配合使用
1.luaL_ref原型:int luaL_ref (lua_State *L, int t);该方法对栈顶对象创建一个引用,放在table的index里,这里的index就是参数t,记住这个t,在用rawgeti是会用到。引用是唯一的2.lua_rawgeti原型:void lua_rawgeti (lua_State *L, int index, int n);把t原创 2016-08-11 19:24:21 · 4183 阅读 · 1 评论 -
Lua源码的编译
转载自:http://blog.csdn.net/qinyuanpei/article/details/45169969Lua5.3已经发布好长时间了,可是因为LuaForWindows的Lua版本无法和官方保持一致,所以想尝试下编译Lua5.3的源代码,因为作为一名合格的程序员,是应该要懂得编译原理的相关内容的啊(可是我真的没有学过编译原理啊!…..)。好了,那么今天博主将在转载 2016-11-06 02:26:37 · 573 阅读 · 0 评论 -
Lua类的实现
详细参见:lua class wiki和lua class github-- class.lua-- Compatible with Lua 5.1 (not 5.0).function class(base, init) local c = {} -- a new class instance if not init and type(base) == 'functio原创 2017-01-12 00:27:30 · 567 阅读 · 0 评论 -
Lua bit库扩展
LuaJIT中添加了bit库的扩展,bit库。一共有12个方法的扩展,依次是 bit.tobit 转成位格式 bit.tohex 转出16进制格式 bit.bnot 取反 bit.band 与操作 bit.bor 或操作 bit.bxor 非操作 bit.lshift 逻辑左移 bit.rshift 逻辑右移 ...原创 2018-09-29 12:02:09 · 8987 阅读 · 0 评论 -
lua5.1实现string.pack的int to string的pack和unpack
local pack_little = string.pack("<I2",259)local pack_bigger = string.pack(">I2",259)print("pack_little = "..pack_little.." byte1 = "..pack_little:byte(1).." byte2 = "..pack_little:byte(2))原创 2018-10-18 13:52:49 · 5404 阅读 · 0 评论 -
Lua Table实现deep copy
local function deepcopy(orig) local orig_type = type(orig) local copy if orig_type == 'table' then copy = {} for orig_key, orig_value in next, orig, nil do cop...转载 2018-10-09 19:52:10 · 927 阅读 · 0 评论 -
Metatable元方法讲解
转载自:http://www.cnblogs.com/JimLy-BUG/p/5364281.html目录__index元方法__newindex元方法__add元方法__sub元方法__call元方法__tostirng元方法目 录 一、 __index元方法__index元方法:用于查看表中元素是否存在,如果不存在返回结果为nil;如转载 2016-08-10 21:36:43 · 362 阅读 · 0 评论 -
Lua继承的实现(__index元方法)
通过Lua强大的metatable来实现继承,主要代码如下:__index元方法:用于查看表中元素或方法是否存在,如果不存在返回nil,如果存在,则返回__index表中的结果BaseClass = {}BaseClass.__index = BaseClassfunction BaseClass:MyShow( key ) if key == "key2" then retu原创 2016-08-10 16:28:23 · 710 阅读 · 0 评论 -
Lua学习之5:基本数据结构-表(Table)
table是Lua中唯一的数据结构,其他语言所提供的数据结构原创 2014-11-14 18:15:05 · 874 阅读 · 0 评论 -
Lua学习之6:面向对象编程
1、代码--以函数闭包的形式实现面向对象 --定义一个方法,函数闭包实现一个类的概念 function People(name) local self = {} --初始化方法,私有的 local function init() self.name = name end self.sayHi =原创 2014-11-15 10:25:07 · 617 阅读 · 0 评论 -
Lua学习之7:Chunk
1、ChunkChunk是一系列语句,Lua原创 2014-11-15 11:04:05 · 1557 阅读 · 0 评论 -
Lua学习之4:基本语法
本节讲一下Lua的基本语法:1)输出语句;2)bian原创 2014-11-14 09:42:33 · 643 阅读 · 0 评论 -
Lua学习之【1】:Mac平台下环境的搭建及Hello Lua的输出与编译
1、下载Lua安装包下载地址:http://www.lua.org/download.html,目前最新的Lua是5.2.3。解压得到doc、src、Makefile、README共4个文件。2、编译Lua环境1)控制台下cd Lua解压路径。2)执行make 平台,我是Mac,所以执行make macosx;3)在src中生成lua和luac两个可执行原创 2014-10-20 22:13:11 · 1842 阅读 · 0 评论 -
Lua学习之9:函数
函数有两种用途:1、完成指定任务,这种情况下函数作为调用语句使用;2、计算并返回值,这种情况下函数作为赋值语句的表达式使用。Lua函数使用规则:1、如果函数参数列表为空,必须使用()表名函数调用。例外是当函数只有一个参数并且这个参数是字符串或者表构造时,()可有可无如:f {x = 1,y = 2}等价于 f({x = 1, y = 2})2、Lua提供了面向对象方式调用函数的语法原创 2014-11-18 19:06:25 · 943 阅读 · 0 评论 -
Lua学习之【3】:表达式
1、算数表达式aaaaaabbbbbbb原创 2014-10-21 22:18:34 · 1186 阅读 · 0 评论 -
Lua学习之10:面向对象与继承
1、简单的面向对象函数原创 2014-11-24 14:30:28 · 659 阅读 · 0 评论 -
mingw32编译lua
cd到lua/src目录mingw32-make mingw原创 2018-10-23 01:40:24 · 598 阅读 · 0 评论