在学习Lua泛型for的过程中,我想实现ipairs的功能,写了如下代码:1 function my_ipairs(table_name)2 local i = 03 return function() i = i + 1;return i,table_name[i];end4 en...
分类:
其他好文 时间:
2015-04-02 18:14:46
阅读次数:
155
学习lua不得不了解其方法或者说语法的特性,比如:多值返回function maximum (a) local mi = 1 -- maximum index local m = a[mi] -- maximum value for i,val in ipairs(a) do ...
分类:
移动开发 时间:
2015-03-10 18:44:37
阅读次数:
150
lua 中pairs 和 ipairs区别标准库提供了集中迭代器,包括迭代文件每行的(io.lines),迭代table元素的(pairs),迭代数组元素的(ipairs),迭代字符串中单词的 (string.gmatch)等等。LUA手册中对与pairs,ipairs解释如下:ipairs (t)...
分类:
其他好文 时间:
2015-02-09 15:27:58
阅读次数:
115
lua中基础类 lbaselib.c
这里面定义的基础函数,函数指针数组;
static const luaL_Reg base_funcs[] = {
{"assert", luaB_assert},
{"collectgarbage", luaB_collectgarbage},
{"dofile", luaB_dofile},
{"error", luaB_erro...
分类:
其他好文 时间:
2015-01-15 23:48:07
阅读次数:
385
设计一个简单的事件派发器,个人觉得最重要的一点就是如何保证事件派发过程中,添加或删除同类事件,不影响事件迭代顺序和结果,只要解决这一点,其它都好办。为了使用pairs遍历函数,重写了pairs(lua 5.2以上版本不需要):stdext.lualocal _ipairs = ipairsfunct...
分类:
其他好文 时间:
2014-12-22 14:09:37
阅读次数:
268
lua中for的四种遍历方式区别table.maxn 取最大的整数key#table 从1开始的顺序整数最大值,如1,2,3,6 #table == 3key,valuepairs 取每一个键值对ipairs 取从key==1开始的顺序整数最大值,每个键值对参考http://rangercyh.bl...
分类:
其他好文 时间:
2014-12-04 19:33:02
阅读次数:
225
众人皆知的是有两种:ipairs和pairs,这两种相信大家也是很了解了,其中ipairs是从头(idx=1)开始往后遍历,遇到nil即退出循环;而pairs则是顺序不定的遍历,只要里面有值都可以遍历的到。
那假如我需要顺序遍历而且即使中间有nil也能完整遍历到最后呢?
接下来就说这个:通过maxSize = table.maxn(t)获取到table最后一...
分类:
其他好文 时间:
2014-11-19 18:43:37
阅读次数:
236
在Lua中, 如何遍历一个Table元素,主要有两种类型: 1.pairs:下标从1开始,并且是连续的才可以使用
2.ipairs:是无序的示例 local t = { [10] = 1, [20] = 2, [30] = 3, [40] = 4, [50] = 5, [60] = 6 } for ...
分类:
其他好文 时间:
2014-10-28 23:31:59
阅读次数:
478
本章主要讲下,table的remove,这个东西不注意就容易被坑(被坑的飘过~~~),当然,这里是针对数组table。即用ipairs方法遍历。星月倾心贡献~~~看示例1:直接nillocal tbl = { 1, 2, 3, 4, 5 }for k, v in ipairs( tbl ) do ....
分类:
其他好文 时间:
2014-10-16 21:58:33
阅读次数:
238
lua 中pairs 和 ipairs区别
标准库提供了集中迭代器,包括迭代文件每行的(io.lines),迭代table元素的(pairs),迭代数组元素的(ipairs),迭代字符串中单词的
(string.gmatch)等等。LUA手册中对与pairs,ipairs解释如下:
ipairs (t)
Returns three values: an ite...
分类:
其他好文 时间:
2014-09-29 13:32:41
阅读次数:
222