理解lua中 . : self


文章目錄[點擊展開](?)[+]

  1. 前言
  2. 點號定義和調用
  3. 冒號定義和冒號調用
  4. 運行結果
  5. 相互調用
  6. 相互調用運行結果
  7. 總結

前言

在LUA中,經常可以看到:. self,今天在CSDN上看到一篇博客寫的很清楚,轉載過來

原文出處:http://blog.csdn.net/wangbin_jxust/article/details/12170233

?

lua編程中,經常遇到函數的定義和調用,有時候用點號調用,有時候用冒號調用,這里簡單的說明一下原理。

點號(.)定義和調用

girl={money=200}
function girl.goToMarket(girl,someMoney)
    girl.money= girl.money -someMoney
end
?
girl.goToMarket(girl,100)
print(girl.money)

可以看出,這里進行了方法的點號定義和點號調用。

冒號(:)定義和冒號調用

boy={money=200}
function boy:goToMarket(someMoney)
    self.money = self.money -someMoney
end
boy:goToMarket(100) -- 注意這里的boy:goToMarket(100) -> boy.goToMarket(self,100)
print(boy.money)

這里進行了冒號定義和冒號調用。

運行結果

以上的打印結果都是100。

可以看出,冒號定義和冒號調用其實跟上面的效果一樣。把第一個隱藏參數省略了,而該參數self指向調用者自身

?

相互調用

當然了,我們也可以點號定義冒號調用,或者冒號定義點號調用如:

man={money=200}
function man.goToMarket(self,someMoney)
    self.money = self.money -someMoney
end
man:goToMarket(100) -- 注意這里man:goToMarket(100) ->man.goToMarket(self,100)
print(man.money)

相互調用運行結果

image

?

總結

冒號只是起了省略第一個參數self的作用,該self指向調用者本身,并沒有其他特殊的地方。


本文轉自趙青青博客園博客,原文鏈接:http://www.cnblogs.com/zhaoqingqing/p/3912782.html,如需轉載請自行聯系原作者

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/539821.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/539821.shtml
英文地址,請注明出處:http://en.pswp.cn/news/539821.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

適合初中文憑學的計算機技術,初中畢業學啥技術好 最吃香的手藝

很多初中畢業的初中生因為成績不是很理想,不能上一所理想的高中,所以選擇學一門技術,那么初中畢業學啥技術好呢,哪些手藝未來比較吃香呢,下面小編為大家分析一下初中畢業應該學什么手藝。初中畢業學哪些技術發展好汽修…

SecureCRT配置

一、下載 路徑:http://www.pc6.com/softview/softview_24396.html 里面有破解教程 二、配置 1、選擇仿真環境養眼的綠色字體黑色背景配置,選擇 traditional option->Global options –>default session -> edit default settings -> 修改…

左室短軸切面_一文讀懂心臟超聲基本切面

一. 本文出現的英文簡稱二.超聲心動圖基本切面采用與心臟相互垂直的三個基本平面,主要觀測心臟各房室腔內徑、容積和室壁厚度及其相關解剖結構運動狀態、功能等。檢查中探頭最常放置的位置包括心底部、心尖部、劍突下,鎖骨/胸骨上窩等。心臟超聲檢查中探…

怎么用計算機彈c哩c哩,計算器音樂c哩c哩樂譜 | 手游網游頁游攻略大全

發布時間:2016-06-29鏟子騎士樂譜有什么用 鏟子騎士樂譜賣不了怎么辦.不少鏟子騎士玩家收集了一些樂譜,那么這些樂譜功能是什么呢?下面99單機網小編給大家介紹鏟子騎士樂譜有什么用 鏟子騎士樂譜賣不了怎么辦. 樂譜可以賣錢,還可以更換游戲中的音樂 ...標簽&#x…

Windows 7 資源管理器搜索Channel 9 視頻

在Windows 7 中Federated Search 可以通過OpenSearch 協議訪問到遠程數據資源,也就意味著用戶可以使用資源管理器(Windows Explorer)搜索并瀏覽遠程數據。本篇我們將制作一個搜索連接器(Search Connector)查找Channel …

python django flask介紹_django和flask哪個值得研究學習

對于初學者來說,找到一個好的框架來學習或者項目開發都是非常有必要的,而當你有一定開發經驗后,你應該選擇適合當前業務需要的框架。我這里并不想探討哪個框架好哪個不好,這個永恒的話題就跟探討“世界上哪種編程語言最屌”是一樣…

sts html視圖編輯器,免費的HTML可視化編輯器HBuilder前端開發編輯器 | 老瘋子

互聯網上幾款比較熱門的編輯器Dreamweaver、Notepad、Sublime Text、Vim、Emacs等,這些或許你用過其中之一或許聽說過它們。這些都是國外人員開發的有些甚至被公認為是最受專業程序員喜愛的代碼編輯器(Vim和Emacs)。都是國外的,那國內的呢?當…

css層疊樣式初學

一、css簡介 1、層疊樣式表:疊加效果,不同css對同一html修飾,沖突部分,優先級高作用,不沖突部分,共同作用 2、css作用 (1)修飾html     (2)替代了標簽自身的顏色,字號等屬性,提高…

sum(x) over( partition by y ORDER BY z ) 分析

參考的博文出處:http://www.cnblogs.com/luhe/p/4155612.html,對博文進行了修改新增,修改了錯誤的地方 之前用過row_number(),rank()等排序與over( partition by ... ORDER BY ...),這兩個比較好理解: 先分組&#xff…

sqlserver 日期與字符串之間的轉換

字符轉換為日期時,Style的使用 --1. Style101時,表示日期字符串為:mm/dd/yyyy格式SELECT CONVERT(datetime,11/1/2003,101)--結果:2003-11-01 00:00:00.000 --2. Style101時,表示日期字符串為:dd/mm/yyyy格式SELECT CONVERT(datetime,11/1/2003,103)--結果:2003-01-11 00:00:00…

idea數據庫反向生成實體類_IntelliJ IDEA 的數據庫管理工具實在太方便了

1. 前言對于一個有軟件潔癖的人,能用現有的軟件解決問題的絕不安裝新的軟件。Java后端開發主要跟數據庫打交道,所以數據庫圖形化界面(GUI)是少不了的。通常圖形化操作關系型數據庫(RMDBS)大多數人會選擇Nav…

DBMS_OUTPUT.PUT_LINE沒有輸出

解決方法: 打開打印輸出 set serveroutput on;問: 明明設了,但是還是沒有打印啊! 答: 只有在調用 存儲過程的時候,才會打印出來。在創建編譯的時候,是不會打印出來的。 (博主今天…

Fresco 二三事:圖片處理之旋轉、縮放、裁剪切割圖片

關于Fresco加載圖片的處理,例如旋轉、裁剪切割圖片,在官方文檔也都有提到,只是感覺寫的不太詳細,正好最近項目里有類似需求,所以分享一些使用小tip,后面的朋友就不用再走彎路浪費時間了。(測試圖…

老年人計算機應用基礎,國開電大老年心理健康作業一參考答案

題目1.腦功能衰退明顯的癥狀是( )。A. 記憶力衰退B. 皮膚老化C. 孤獨感強D. 感知覺能力的退化【答案】:記憶力衰退題目2.下列哪項不屬于老年人的特點:( )。A. 肺功能下降B. 體重下降C. 視野狹窄D. 嗜睡【答案】:嗜睡題目3.下列不是診斷老年…

家裝強電弱電布線圖_關于你不知道的弱電改造詳解 提早了解好做準備

在我們的日常生活中,沒有一處是不用電的。洗衣、做飯、看電視,這些我們生活中看起來平淡無奇的小事,離開電卻難以為繼。今天,裝一網為大家介紹弱電改造,很多業主不知道弱電改造是什么意思,也不知道弱電改造…

SecureCRT配置前--Linux網卡設置

在用SecureCRT連接Linux的時候,需要設置Linux的網卡信息。 1、輸入命令:setup,彈出配置,選擇Network configuration,配置網絡 2、選擇device configuration 配置網卡 3、選擇eth0,第一塊網卡 4、配置eth0網…

創建SQL函數計算員工加班時間

你好,韓老師有個問題請教。我想通過秒計算加班時間。規則為:加班滿4小時才算加班,加班時間滿8小時為加班一天,加班時間不足4小時不算加班,加班時間大于4小時小于8小時為0.5個加班。我寫了一個自定義函數計算但是計算出…

西安石油大學計算機基礎考試試題,2017年西安石油大學計算機學院824計算機組成原理考研題庫...

一、名詞解釋1. 異構多核【答案】異構多核處理機內的各個計算內核結構不同,地位不對等。一般多采用“主處理核協處理核”的主從架構。 異構多核處理機的優勢在于可以同時發揮不同類型處理機各自的長處來滿足不同種類的應用的性能和功耗需求。研宄表明&am…

cdn節點人少延遲高_讓你刷劇一直爽,CDN原理是什么

鼠年春節,一個特別的春節。受疫情影響,假期比往年長了一些。這么長時間宅在家中,想必大家除了睡覺,花費時間最多的就是“刷劇”了。今天講的技術主題就和“刷劇”有關,它是CDN。我們通過觀察CDN的技術來看CDN的產業發展…

ping不通Linux系統解決方法

【申明】解決方法有很多,本文不一定全,本文的方法不一定能幫助你 一、常規安裝 1、檢查windows系統的網絡,是公用還是專用,修改網絡類型為專用。 2、關閉windows防火墻,殺毒軟件防火墻。 3、關閉Linux防火墻&#…