Lua讀取C#中的List出現的錯誤LuaException: try to get System.Collections.Generic.List`

情況是我想要把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。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章