我用lua脚本写程序时,出现了下面的错误:attempt to index field 'size' (a nil value)

不知道是什么原因

错误已经写的很明显了
你使用了一个空值来索引一个table
比如 你运行一下这段代码你就懂了
tab = {}
tab.size = {}
print(tab.size.a)
tab.size = nil
print(tab.size.a)
第一次输出nil
第二次就出现了和你一样的错误
因为size 本身不是一个table 而你以访问table的方式来访问这个值为nil的size
所以就出现这个问题了
解决的方法是 你确认一下 在之前的函数里是否初始化了这个size 或者是 把它置成nil了追问

比较奇怪的是,错误的位置是固定的,我调整了长度依然这样,我抽出来一段
fruit_left_sur[3] = {}
for i = 0, 4 do
fruit_left_sur[3][i] = Mt.Surface.New("res/kiwi/left/"..i+1)
end
fruit_right_sur[3] = {}
for i = 0, 4 do
fruit_right_sur[3][i] = Mt.Surface.New("res/kiwi/right/"..i+1)
end

追答

lua的数组 默认是从1开始
你看看是不是这个原因引起的
比如
a = {"a","b","c"}
print(a[1])

温馨提示:答案为网友推荐,仅供参考
相似回答