原文:Lua-面向对象中函数使用时冒号(:)和点(.)的区别

先来看一段简单的代码: 输出结果为: 由此可见,定义:在Eat 冒号函数 内部有一个参数self,在Sleep 点函数 内部没有参数self 调用:用冒号 : 调用函数时,会默认传一个值 调用者自身 作为第一个参数 用点 . 调用函数时,则没有 如果要使结果一致,则: 输出结果: 我们为什么可以用.和:来定义函数function Animal.Sleep time end 这种写法是一种语法糖 ...

2016-08-19 22:08 0 1787 推荐指数:

查看详情

Lua面向对象

一、Lua类的简单实现: (1)版本——摘自 Cocos2.0的: 下面是测试这段功能的代码片: 如果要构造一个派生类来继承上面那个基类,那么需要加上下面这么一段 测试继承的代码: 完整代码 ...

Mon Apr 08 01:28:00 CST 2019 0 820
lua冒号区别

lua的语法很简单,太简单了,所以lua就复杂了 两个与一个有什么区别呢? 一个用来定义和取得一个变量,这个变量可能是个函数 两个用来定义和调用一个函数,两个会自动传入“调用者”这个table自身 先看简单的: c = {a = 1, b = 2} function c ...

Sun Jun 11 06:48:00 CST 2017 0 8090
Lua 面向对象

面向对象  组成:成员变量、成员函数  要求:每个对象,由类生成,有自己的成员变量、使用共同的成员函数 Lua构造面向对象  原理    用table表示成员变量    用function表示成员函数    用metatable关联对象和类  实现 ...

Sat Oct 05 04:28:00 CST 2019 0 628
Lua冒号与self

Lua冒号与self,它们之间的关系主要体现在函数的定义与调用上,Lua函数定义时可以用也可以用冒号,如: 用冒号定义的函数有个特别的地方是它内部有个self表示自身可以直接访问(虽然self并不是Lua的关键字,他它确实是可以访问的),如同C++、C# ...

Wed Aug 16 07:04:00 CST 2017 0 1642
面向过程、面向函数面向对象区别浅谈

Python的面向过程、面向函数面向对象区别浅谈 转自--猎奇古今,加上其他 有人之前私信问我,python编程有面向过程、面向函数面向对象三种,那么他们区别在哪呢? 面向过程就是将编程当成是做一件事,要按步骤完成! 比如煮咖啡这件事,先拿一定量的咖啡豆,然后磨成粉末,再倒入咖啡机 ...

Thu Nov 22 18:18:00 CST 2018 0 2175
lua面向对象实现

  百度搜索一下,给出出的解决方案和学习帖子很多,可是我还是有很多的问题! (1)什么是面向对象? (2)lua怎么实现面向对象? (3)什么样的实现既简单又能完成我的功能? (4)一定要按照c++的方式实现类的继承吗?   能力有限,在学习lua面向对象的时候我比较喜欢两种实现方式 ...

Sun Jan 25 21:11:00 CST 2015 0 2094
lua实现面向对象(一)

c++和java语言机制本身带有面向对象的内容,而lua设计的思想是元编程,没有面向对象的实现。 但是利用lua的元表(matetable)机制,可以实现面向对象。要讲清楚怎样实现lua面向对象,需要讲清楚以下内容。 1.lua元表 2.类和对象 3.继承 1.lua元表 lua ...

Thu Feb 23 23:08:00 CST 2017 0 6028
关于lua冒号(":")和点号(".")的区别

一、定义方法的区别 1、冒号定义方法,默认会接受self参数;而点号定义的时候,默认不会接受self参数 例: (1)冒号定义 function class:test()   --这里会接受self参数,比如   print(self.a,self.b)   在这里self ...

Sat Jul 02 02:46:00 CST 2016 1 8140
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM