0

我有一个 .lua 脚本文件,但我遇到了这样的问题:

myTable = {}

function changeMyTable(index,value){
    myTable[index] = value
    --When I output the size of #myTable now I receive 1 as result...
}

function checkMyTableSize(){
    --when i output #myTable here. I receive 0 as result
}

任何人都知道如何在全局“myTable”表上创建索引?

我也尝试过使用 table.insert(myTable,index,value) 。

4

1 回答 1

1

--当我现在输出#myTable 的大小时,我收到 1 作为结果...

只有当值恰好为 1 时才会发生这种情况。index否则不会。# 运算符仅计算表中作为数组值的值的数量,并计入第一个 NIL。所以它检查 table[1],然后是 table[2],然后......直到它达到 NIL。它返回了那个。

请注意,这是对其背后概念的解释。实现可能不会那样循环。

在任何情况下,您的不一致可能是由于多次运行脚本而不是多次调用全局函数。

于 2011-07-05T00:55:32.763 回答