亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問關于LUA語言請教 function函數使用?

請問關于LUA語言請教 function函數使用?

慕姐4208626 2019-07-10 11:07:34
LUA語言請教 function函數使用
查看完整描述

5 回答

?
肥皂起泡泡

TA貢獻1829條經驗 獲得超6個贊

本身也是閉包的一個演示例子
首先你要看newCounter這個函數的返回值
它的返回值 返回的不是一個具體的數字,而是一個函數
所以 如果直接print這個函數 得到的是function xxxx
當調用這個返回的函數才能得到這個值

查看完整回答
反對 回復 2019-07-14
?
千巷貓影

TA貢獻1829條經驗 獲得超7個贊

冒號本身是一個語法糖

當一個table內的方法被以冒號調用的話表示把這個table作為第一個參數傳進去

寫個demo

123456local t = {}t.fun = function(tab,v)    print(tab,v)endt:fun(123)t.fun(t,123)

這2個是相同的

所以根據你的function判斷是否需要傳入table來判斷是否需要用冒號


查看完整回答
反對 回復 2019-07-14
?
holdtom

TA貢獻1805條經驗 獲得超10個贊

你首先要知道 lua語言是一個腳本語言

腳本語言的話只負責處理中間的過程,具體很多事務的實現需要依賴于接口

如果針對你的要求

123456function main()    local a = 4    local b = 5    local res = a + b    text:setValue(res)end

當然 這里不一定就是用text:setValue 因為不同宿主語言提供的接口不一樣 這就導致了你的setValue這個名字不一樣

而且同時可能有很多的文本框,也會導致你的text不同  具體要看宿主語言的提供


查看完整回答
反對 回復 2019-07-14
?
瀟瀟雨雨

TA貢獻1833條經驗 獲得超4個贊

function test(a, b)
return a+b, a-b

end

local m, n = test(5, 3)

print(m)
print(n)

輸出結果為:
8
2



查看完整回答
反對 回復 2019-07-14
?
慕哥9229398

TA貢獻1877條經驗 獲得超6個贊

testFun是入口函數,也就是執行是從這個函數開始的,這個函數有兩個參數,一個是表tab,一個是函數fun,它們都是形參;當調用它時會傳入兩個實參,它們的名稱不一定和形參的名字相同。
f1是另一個函數,它是testFun函數中第二個參數的實參,也就是實際執行時是執行的這個函數
fun(k, v)在testFun傳入實參后變成了f1(k, v)

查看完整回答
反對 回復 2019-07-14
  • 5 回答
  • 0 關注
  • 1283 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號