2014年7月24日

[转]Lua中的面向对象实现方法

摘要: 面向对象不是针对某一门语言,而是一种思想,在面向过程的语言也可以使用面向对象的思想来进行编程。在Lua中,并没有面向对象的概念存在,没有类的定义和子类的定义,但同样在Lua中可以利用面向对象的思想来实现面向对象的类继承。一、复制表的方式面向对象1234567891011121314151617181... 阅读全文

posted @ 2014-07-24 14:00 laihaiteng 阅读(344) 评论(0) 推荐(0) 编辑

[转]Lua中的元表与元方法

摘要: 前言元表对应的英文是metatable,元方法是metamethod。我们都知道,在C++中,两个类是无法直接相加的,但是,如果你重载了“+”符号,就可以进行类的加法运算。在Lua中也有这个道理,两个table类型的变量,你是无法直接进行“+”操作的,如果你定义了一个指定的函数,就可以进行了。那这篇... 阅读全文

posted @ 2014-07-24 12:03 laihaiteng 阅读(191) 评论(0) 推荐(0) 编辑

[转]Lua语言基础汇总(7) -- 协同程序

摘要: 前言协同程序与线程差不多,也就是一条执行序列,拥有自己独立的栈、局部变量和指令指针,同时又与其它协同程序共享全局变量和其它大部分东西。从概念上讲,线程与协同程序的主要区别在于,一个具有多个线程的程序可以同时运行几个线程,而协同程序却需要彼此协作的运行。就是说,一个具有多个协同程序的程序在任意时刻只能... 阅读全文

posted @ 2014-07-24 11:29 laihaiteng 阅读(171) 评论(0) 推荐(0) 编辑

[转]Lua语言基础汇总(6)-- 迭代器与泛型for

摘要: 前言迭代器就是一种可以遍历一种集合中所有元素的机制,在Lua中,通常将迭代器表示为函数。每调用一次函数,就返回集合中的“下一个”元素。每个迭代器都需要在每次成功调用之后保存一些状态,这样才能知道它所在的位置及如何走到下一个位置,通过之前博文的总结,闭包对于这样的任务提供了极佳的支持。现在我们就用代码... 阅读全文

posted @ 2014-07-24 11:28 laihaiteng 阅读(195) 评论(0) 推荐(0) 编辑

[转]Lua语言基础汇总(5) -- 闭包

摘要: 前言在很多语言中都有闭包的概念,而在这里,我将主要对Lua语言的闭包概念进行分析与总结。希望对大家学习Lua有帮助。什么是闭包?闭包在Lua中是一个非常重要的概念,闭包是由函数和与其相关的引用环境组合而成的实体。我们再来看一段代码:1234567891011functionnewCounter()l... 阅读全文

posted @ 2014-07-24 11:27 laihaiteng 阅读(161) 评论(0) 推荐(0) 编辑

[转]Lua语言基础汇总(4) -- 函数

摘要: Lua中的函数和C++中的函数的含义是一致的,Lua中的函数格式如下:123functionMyFunc(param)--Dosomethingend在调用函数时,也需要将对应的参数放在一对圆括号中,即使调用函数时没有参数,也必须写出一对空括号。对于这个规则只有一种特殊的例外情况:一个函数若只有一个... 阅读全文

posted @ 2014-07-24 11:26 laihaiteng 阅读(149) 评论(0) 推荐(0) 编辑

[转]Lua语言基础汇总(3) -- 语句

摘要: 赋值赋值的基本含义是修改一个变量或一个table中字段的值,这个和其它语言没有多少区别,但是对于Lua,有一个特性,它允许“多重赋值”,也就是一下子将多个值赋予多个变量,例如以下代码:123localx1,x2=2,4print(x1)-->2print(x2)-->4在多重赋值中,Lua先对等号右... 阅读全文

posted @ 2014-07-24 11:25 laihaiteng 阅读(146) 评论(0) 推荐(0) 编辑

[转]Lua语言基础汇总(2) -- 表达式

摘要: 算术操作符Lua支持常规的算术操作符有:”+”(加法),”-”(减法),”*”(乘法),”/”(除法),”^”(指数),”%”(取模),一元的”-”(负号)。所有的这些操作符都用于实数。例如:x^0.5将计算x的平方根,x^3将计算x的3次方。关系操作符Lua提供的关系操作符有:””,”=”,”==... 阅读全文

posted @ 2014-07-24 11:23 laihaiteng 阅读(156) 评论(0) 推荐(0) 编辑

[转]Lua语言基础汇总(1) -- 类型与值

摘要: 基础介绍Lua是一种动态类型的语言。在语言中没有类型定义的语法,每个值都带有其自身的类型信息。在Lua中有8种基本类型,分别是:nil(空)类型boolean(布尔)类型number(数字)类型string(字符串)类型userdata(自定义类型)function(函数)类型thread(线程)类... 阅读全文

posted @ 2014-07-24 11:19 laihaiteng 阅读(193) 评论(0) 推荐(0) 编辑

导航