Lua中的函數(shù)代碼實(shí)例
在lua中,函數(shù)是一種“第一類值”,它們具有特定的詞法域。
第一類值:表示在lua中,函數(shù)與其他傳統(tǒng)類型的值(數(shù)字和字符串)具有相同的權(quán)利,函數(shù)可以存儲(chǔ)到變量中(無論全局變量還是局部變量)或者是table中,可以作為實(shí)參傳遞給其他函數(shù),還可以作為其他函數(shù)的返回值。
詞法域:是指一個(gè)函數(shù)可以嵌套在另一個(gè)函數(shù)中。內(nèi)部的函數(shù)可以訪問外部函數(shù)中的變量。
看例子代碼:
do
function foo(a, b, c)
print(a, b, c);
end
local c = foo;
c(2, 3, 4);
end
輸出的結(jié)果是:2, 3, 4
例子:
do
function derivative(f, delta)
delta = delta or 0.01
print("delta: ", delta);
return function (x)
return (f(x + delta) - f(x)) / delta
end
end
local c = derivative(math.sin)
print(math.cos(10), c(10))
end
在上面的例子中,
c = function(x) return (math.sin(x + 0.1) -math.sin(x)) / 0.01
因?yàn)椋?br />
local c = derivative(math.sin)
將:
f = math.sin
相關(guān)文章
Lua中使用table實(shí)現(xiàn)的其它5種數(shù)據(jù)結(jié)構(gòu)
這篇文章主要介紹了Lua中使用table實(shí)現(xiàn)的其它5種數(shù)據(jù)結(jié)構(gòu),本文用table為基礎(chǔ),實(shí)現(xiàn)了數(shù)組、鏈表、隊(duì)列、集合等數(shù)據(jù)類型,需要的朋友可以參考下2014-09-09
Lua Table轉(zhuǎn)C# Dictionary的方法示例
這篇文章主要給大家介紹了關(guān)于Lua Table轉(zhuǎn)C# Dictionary的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03
使用Lua作為C語言項(xiàng)目的配置文件實(shí)例
這篇文章主要介紹了使用Lua作為C語言項(xiàng)目的配置文件實(shí)例,本文用Lua創(chuàng)建了一個(gè)配置文件,然后在C言語中解析它,需要的朋友可以參考下2015-04-04
Lua中實(shí)現(xiàn)php的strpos()以及strrpos()函數(shù)
這篇文章主要介紹了在Lua中實(shí)現(xiàn)php的strpos()以及strrpos()函數(shù)的方法,需要的朋友可以參考下2014-11-11

