Lua中類的函式

2021-08-01 01:29:56 字數 1026 閱讀 2018

對於lua中類的函式,這裡需要說明的是如下幾點:

1. 當你在寫類中的函式時,如果對函式新增了local ,就會報如下錯誤:

之所以會出現這樣的問題,在於根本就不能對類的方法單獨新增local。下面舉例說明:

--下面是乙個區域性函式。

local

function

doa()

print("區域性函式")

endtab={}

--類的函式

function

tab.dob

() print("類的函式")

end--local function tab.doc()

-- print("這樣宣告是錯誤的")

--end

向上面對類的方法新增local是不允許的。因為類的方法是類的內容,如果需要使類的方法是具有區域性作用的,只能使類是區域性,也就是修改為如下:

local tab={}

--類的函式

function

tab.dob

() print("類的函式")

end

此時類的方法就是區域性函式了。

2. 對於local和非loca函式的區別。

如果要呼叫local函式,必須在定義local函式之後,再呼叫,否則會找不到這個函式。而非local函式也就是全域性函式,只要定義了,何處呼叫此函式沒有限制。如下所示:

function dotest()

do1()

do2()

endlocal function do1() print("1") end

local function do2() print("2") end

dotest() --呼叫函式

此時就會報錯,解決方法只需要將local去掉即可,或者將do1()和do2() 函式移動dotest()上面即可。

lua中的函式

在lua中,定義函式的形式是 function func a,b func是函式名,在裡面寫關於函式的實現,a,b是函式的引數 end 將函式和table結合起來對於在不同的情況下使用不同的函式,是有很大的幫助的 例如 寫乙個加減乘除的東西 local l func local num l func...

Lua 中模擬 類

lua類 類一般都有類名,屬性宣告,構造體,方法,屬性。下面用lua實現類的模擬,類的模擬有很多種,但是都必須用到 index 下面看看 吧 宣告了類名還有屬性,並且給出了屬性的初始值。class 這句是重定義元表的索引 class.index class 構造體,構造體的名字是隨便起的,一般都叫名...

lua中的require函式

lua提供高階的require函式來載入執行庫,lua中的require函式功能主要有 1 require函式會搜尋目錄載入檔案 2 require會判斷是否檔案已經載入避免重複載入同一檔案。由於上述特徵,require在lua中是載入庫的更好的函式。require使用的路徑和普通我們看到的路徑還有...