美文网首页
理解Lua 语言中的点、冒号与self

理解Lua 语言中的点、冒号与self

作者: 玛玛哈哈m | 来源:发表于2018-05-11 15:40 被阅读0次

Lua编程中,经常遇到函数的定义和调用,有时候用点号调用,有时候用冒号调用
其实用“.”或者用“:”都是可以的,区别是使用冒号时,会隐性传递一个self参数,该参数self指向调用者自身
点号和冒号最主要的区别在于是否包含隐性参数self

这样一来,Class:new(10, 20)这样的函数调用实际上有3个实参,分别是self,10,20,但是function Calss.new(x, y)这样用点号实现的函数定义实际上只有2个形参,这样传参的结果是
self ——> x
10 ——> y
20 ——> 丢弃

综上所述,给出一条不成文的约定:
用lua进行面向对象的编程,成员方法的声明和调用统一用冒号形式,对于数据成员的调用全部用点号形式。

相关文章

  • 理解Lua 语言中的点、冒号与self

    Lua编程中,经常遇到函数的定义和调用,有时候用点号调用,有时候用冒号调用其实用“.”或者用“:”都是可以的,区别...

  • 理解lua 语言中的点、冒号与self

    lua编程中,经常遇到函数的定义和调用,有时候用点号调用,有时候用冒号调用。 可以看出,这里进行了方法的点号定义和...

  • Lua实现面向对象

    注:只是仿照,并不是真正的面向对象C#中是用this表示当前类的对象,Lua中使用self点(.)与冒号(:)的区...

  • Lua-冒号点号

    简介 关于冒号(:)与点号(.) 冒号自带隐藏self,点号不带self,方法用冒号 示例

  • Lua点与冒号的区别

    Lua方法调用. : 方法的使用 冒号操作会带入一个 self 参数,用来代表 自己。而点号操作,只是 内容 的展...

  • 9、lua中的self,点号,冒号的关系

    lua编程中,经常遇到函数的定义和调用,有时候用点号调用,有时候用冒号调用。 点号定义、点号调用 冒号定义、冒号调...

  • Lua的oop分析

    1. self 它相当于c++的this指针,指向调用者自身。当我们在lua里使用它时,使用冒号就可以隐藏该sel...

  • cocos2d-lua开发(1)

    lua语法小结: 点号冒号的区别:点号语法中一般用于类属性的调用(包括方法)。lua中方法调用用 冒号 变量:一个...

  • lua中self的用法

    --冒号:在定义时省略了self--点号:在定义时不省略self 可以把点号(.)作为静态方法来看待,冒号(:)作...

  • Lua与C交互简介

    Lua资源获取### Lua各个平台动态库与静态库下载地址Lua源码下载地址 交互原理#### 要理解Lua与C的...

网友评论

      本文标题:理解Lua 语言中的点、冒号与self

      本文链接:https://www.haomeiwen.com/subject/yzmfdftx.html