Lua 可變引數之arg與select

2022-07-17 08:54:10 字數 919 閱讀 6362

1

function testfunc(...)

2 local arg = --lua 5

.2以後不再支援預設arg引數,{}與...之間要有空格

3 print("

輸入的引數個數:

".. #arg)

4for i, v in ipairs(arg) do

5print(v)

6end

7end

8 print("

***************************************");

9function testfunc2(...)

10 print("

輸入的引數個數:

".. select('#'

, ...))

11 local count = select('#'

, ...);

12for i = 1, count do

13 num = select

(i, ...)

14print(num)

15end

16end

17 testfunc(1, 3, 5, 7, nil, 9) --輸出結果 135

7918 testfunc2(1, 3, 5, 7, nil, 9) --輸出結果 135

7 nil 9

通過**可以得出結論:

1.ipairs函式遇到nil停止輸出

2.把ipairs換成pairs 發現,輸出結果是1 3 5 7 9,得出結論pairs會過濾到nil

3.select(index,...)函式的作用是返回從第i個開始的所有元素,並且會輸出nil

lua 可變長引數

lua 中 在引數列表中意為 可變引數 這個可變是指,通過這個可以輸入很多引數,但是不需要一一枚舉出來!例子 function a local a1 a2,a3,a4 print this is local num a1,a2,a3,a4 return a1,a2,a3,a4 endlocal at...

lua 函式的可變引數

lua 函式的可變引數我覺得是蠻好用的,傳入,解包都比較清晰明了 1 遍歷可變引數 local function test local arg for k,v in pairs arg do print k is v endendtest 1,2,33,ab var,eg 執行結果為 可以看到k值是...

lua 函式的可變引數

主要掌握 1 虛變數 乙個下劃線 2 lua將函式的可變引數放在乙個叫 arg 的表中,除了引數以外,arg表中還有乙個域n表示引數的個數。1do2 function fun x,y,3end 45 fun 1 x 1,y nil,arg 6 fun 1,2 x 1,y 2 arg 7 fun 1,...