lua表取長度操作

在5.1上運行這個例子,嘗試解釋下這裏的神奇現象: 30行代碼我直接讓nil夾在數組的非空值之間,按照lua5.1的手冊描述,如果數組有一個「空洞」(夾在非空值之間的nil),那麼#t可能是指向任何一個nil值前一個位置的下標。這是因爲取長度操作的具體代碼,並不會遍歷數組的每一個元素,而是跳躍着檢查,於是出現不可控的結果。 而31-36行,表a是逐步插入元素的,這涉及lua表的插入元素算法,例子這
相關文章
相關標籤/搜索