看板 EE_DSnP 關於我們 聯絡資訊
用tests裡的do2測bst時, 有一個是adtd -r 1000, 跑到這會記憶體區段錯誤, 用gdb看了一下, 原因好像是erase(getPos(pos))中的裡的 T& x 沒有東西, 所以沒辦法比較,無法刪除, 但random產生出的東西應該裡面的data不會沒有東西吧 ??? 還是我哪裡寫錯了呢 QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.252.211
e124553423:iterator沒寫好? 11/29 20:52
e124553423:如果pos>node數 getPos會return end() 11/29 20:53
e124553423:可以在刪東西的時候判斷是不是end(),是就直接跳出 11/29 20:55
Komemushisp:我iterator只有超出範圍時才回會傳0 11/29 20:55
※ 編輯: Komemushisp 來自: 140.112.252.211 (11/29 21:00)
Komemushisp:好像沒跑到RANDOM_ACCESS裡面... 該如何改呢? 11/29 21:05
e124553423:random access是給array用的吧? 11/29 21:10
e124553423:就算不跑random access pos超過node數之後 11/29 21:11
e124553423:iterator還是會被加到end()才對 11/29 21:11