参考url: https://blog.codingnow.com/cloud/LuaOO 最近在思考lua类的继承实现 ,参考了云风的类实现,感觉他的更像是接口写法.于是尝试用自己的方式重写了类实例化部分,并注释了一些理解,代码如下 --lua基础类 --1.实现单向继承 local _class={} function class(className, super) local class_type = {} class_type.super = super class_type.class…
工程目录结构: ParentMother.lua: ParentMother = {} function ParentMother:MortherName() print("Morther name : HanMeimei") end return ParentMother ParentFather.lua: ParentFather = {} function ParentFather:FatherName() print("Father name : LiLei"…
讲到元表,先看一段table的合并动作. t1 = {1,2} t2 = {3,4} t3 = t1 + t2 attempt to perform arithmetic on a table value (global 't1') 程序会报错,因为不知道如何对两个table执行+运算,这个时候就需要通过元表来定义,有点类似c中的运算符加载.我们看一下如何通过元表实现合并操作. local mt = {} --定义mt.__add元方法(其实就是元表中一个特殊的索引值)为将两个表的元素合并后返回…
http://my.oschina.net/u/156466/blog/401576local class1 = {} function class1:new() local obj = {} setmetatable(obj, {__index= class1}) return obj end function class1:print1() print("class1:print()") end function class1:print2() print("class1…
Lua(英语发音:/ˈluːə/)程序设计语言是一个简洁.轻量.可扩展的脚本语言,是葡萄牙语中“Luna”(月亮)的意思. Lua is a powerful, fast, lightweight, embeddable scripting language. Lua是一种功能强大,高效,轻量级的嵌入式脚本语言. Introduction Lua is an extension programming language designed to support general procedural…
Cocos2d-x 脚本语言Lua中的面向对象 面向对象不是针对某一门语言,而是一种思想.在面向过程的语言也能够使用面向对象的思想来进行编程. 在Lua中,并没有面向对象的概念存在,没有类的定义和子类的定义.但相同在Lua中能够利用面向对象的思想来实现面向对象的类继承. 一.复制表的方式面向对象 --Lua中的面向对象 --[[ 复制表方式面向对象 參数为一张表.通过遍历这张表取值,赋给一张空表,最后返回新建的表.来达到克隆表 ]] function clone(tab) local ins =…