作者DRLai (蘇打)
看板C_and_CPP
標題[問題] 怪怪的記憶體錯誤?(stl map)
時間Fri Jul 17 16:48:09 2009
我自己寫了一個程式,使用到stl的map
不過寫完後執行,發現他會顯示"Segmentation fault"
我使用gdb來檢查
發現他的錯誤是發生在~map時
我自己寫得程式已經結束,map產生解構子,並且在free時產生的
(程式本身沒有任何erase的部份)
奇怪的是,同樣的程式碼前面有跑過上百次都不會有錯
只會在特定某個區域錯誤
後來改用hash_map,也發生相同的錯誤
不過是發生在insert階段
(insert的資料是單純的long跟int..)
我嘗試直接把資料insert到map中,並不會有錯
這有可能是什麼問題呢…
我找了很久找不到錯誤的地方
錯誤都是發生在map insert / ~map時
g++ 4.1.2
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.138.145.212
推 yoco315:這個有趣 XD 貼 code 07/17 21:05
→ tinlans:先用 valgrind 跑一次看看有沒有什麼發現。 07/17 22:07