情況是我想要把C#的List傳入Lua的一個表中,但是一直報錯
LuaException: try to get System.Collections.Generic.List`
for k,v in ipairs(newFighters) do
print(k)
print(v.xPos)
--table.insert(fighters2,{xPos = v.xPos,yPos = v.yPos,groupId =num,groupName = v.groupName,camp = v.camp, mode = v.mode,pliotName = v.pliotName,task = v.task,type = v.type,unitNum = v.unitNum})
end
解決方案:
將ipairs改爲pairs
ipairs 和 pairs比較
同:都是能遍歷集合(表、數組)
異:ipairs 僅僅遍歷值,按照索引升序遍歷,索引中斷停止遍歷。即不能返回 nil,只能返回數字 0,如果遇到 nil 則退出。它只能遍歷到集合中出現的第一個不是整數的 key。
pairs 能遍歷集合的所有元素。即 pairs 可以遍歷集合中所有的 key,並且除了迭代器本身以及遍歷表本身還可以返回 nil。