![](/upload/rand_pic/2-193.jpg)
lua编程中,经常遇到函数的定义和调用,有时候用点号调用,有时候用冒号调用,这里简单的说明一下原理。如:
点号调用:-- 点号定义和点号调用:girl = {money = 200}function girl.goToMarket(girl ,someMoney) girl.money = girl.money - someMoneygirl.goToMarket(girl ,100)print(girl.money)引用参数self:
-- 参数self指向调用者自身(类似于c++里的this 指向当前类)girl = {money = 200}function girl.goToMarket(self ,someMoney) self.money = self.money - someMoneygirl.goToMarket(girl, 100)print(girl.money)冒号调用:
-- 冒号定义和冒号调用:girl = {money = 200}function girl:goToMarket(someMoney) self.money = self.money - someMoneygirl:goToMarket(100)print(girl.money)
冒号定义和冒号调用其实跟上面的效果一样,只是把第一个隐藏参数省略了,而该参数self指向调用者自身。
总结:冒号只是起了省略第一个参数self的作用,该self指向调用者本身,并没有其他特殊的地方。
引用博文:http://www.xuebuyuan.com/1613223.html
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。程序运行中错误处理是必要的,在我们进行文件操作,数据转移及web service 调用过程中都会出现不可预期的错误。如果不注重错误信...
if语句后面可以是一个可选的else语句,当布尔表达式为false时执行。语法在R中创建if ... else语句的基本语法是 -if(boolean_expr...
因子是用于对数据进行分类并将其存储为级别的数据对象。 它们可以存储字符串和整数。 它们在具有有限数量的唯一值的列中很有用。...
Go 语言 goto 语句Go 语言循环语句Go 语言的 goto 语句可以无条件地转移到过程中指定的行。goto语句通常与条件语句配合使用。可...
介绍在参与 Vant 开发时,请遵守约定的单文件组件风格指南,指南内容节选自Vue 官方风格指南。组件数据组件的 data 必须是一个函...
介绍弹出层容器,用于展示弹窗、信息提示等内容,支持多个弹出层叠加展示。引入通过以下方式来全局注册组件,更多注册方式请参考...
介绍用户可以在文本框内输入或编辑文字。引入通过以下方式来全局注册组件,更多注册方式请参考组件注册。import { createApp } f...
介绍圆环形的进度条组件,支持进度渐变动画。引入通过以下方式来全局注册组件,更多注册方式请参考组件注册。import { createApp...