摘要: function class(classname, super) local superType = type(super) local cls --如果父类既不是函数也不是table则说明父类为空 if superType ~= "function" and superTy... 阅读全文
posted @ 2015-02-11 22:00 zhepama 阅读(695) 评论(0) 推荐(0) 编辑
摘要: Sublime Textis currently the text editor of choice for a number of developers in the open-source community. It’s sophisticated, has powerfultext selec... 阅读全文
posted @ 2015-02-11 18:44 zhepama 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 5.1之前, 全局变量存储在_G这个table中, 这样的操作:a = 1相当于:_G['a'] = 1但在5.2之后, 引入了_ENV叫做环境,与_G全局变量表产生了一些混淆,需要从原理上做一个理解。在5.2中,操作a = 1相当于_ENV['a'] = 1这是一个最基础的认知改变,其次要格外注意... 阅读全文
posted @ 2015-02-11 02:46 zhepama 阅读(480) 评论(0) 推荐(0) 编辑
摘要: lua 的整体效率是很高的,其中,它的 table 实现的很巧妙为这个效率贡献很大。lua 的 table 充当了数组和映射表的双重功能,所以在实现时就考虑了这些,让 table 在做数组使用时尽量少效率惩罚。lua 是这样做的。它把一个 table 分成数组段和 hash 段两个部分。数字 key... 阅读全文
posted @ 2015-02-11 02:36 zhepama 阅读(1192) 评论(0) 推荐(0) 编辑
摘要: 加载指定的模块。首先函数会在 package.loaded 这个表中查看是否已经加载 了 modname 这个模块。如果是,那么 require 会返回保存在 package.loaded[modname]的值。否则它将尝 试去查找一个加载该模块的加载器。require 是由 package.sea... 阅读全文
posted @ 2015-02-11 02:18 zhepama 阅读(1572) 评论(0) 推荐(0) 编辑
摘要: 很快就要开始介绍Lua里的“面向对象”了,在此之前,我们先来了解一下Lua的模块。1.编写一个简单的模块Lua的模块是什么东西呢?通常我们可以理解为是一个table,这个table里有一些变量、一些函数…等等,这不就是我们所熟悉的类吗?没错,和类很像(实际上我说不出它们的区别)。我们来看看一个简单的... 阅读全文
posted @ 2015-02-11 01:53 zhepama 阅读(1369) 评论(0) 推荐(0) 编辑
摘要: 前言元表对应的英文是metatable,元方法是metamethod。我们都知道,在C++中,两个类是无法直接相加的,但是,如果你重载了“+”符号,就可以进行类的加法运算。在Lua中也有这个道理,两个table类型的变量,你是无法直接进行“+”操作的,如果你定义了一个指定的函数,就可以进行了。那这篇... 阅读全文
posted @ 2015-02-11 01:19 zhepama 阅读(317) 评论(0) 推荐(0) 编辑