C 程式記憶體洩漏

2021-10-04 04:57:48 字數 312 閱讀 1408

今天在vs2017下程式設計,遇到了未知的錯誤。debug平台是x32。

用到了虛函式過載動態繫結,過載函式內部有定義區域性的vector變數。在函式結束之後,vector未自動銷毀,導致記憶體洩漏,程式崩潰。

原因未知。

2020-3-21 11:17:45:

原因查明:自定義的vector類在使用link函式鏈結兩個vector物件的時候出現未銷毀物件的情況;並非stl自帶的vector錯誤。

修正:使用雙向佇列deque重構了使用vector部分的**。

使用工具:記憶體檢測工具。

vs平台記憶體洩漏手動檢測工具

C 程式記憶體洩漏檢查

一 在windows平台上面 以前我都是用purify,因為沒有正版的,很是麻煩,後來我開始用windows自帶的umdh,也很好用 摘要一下步驟如下 注 得先把gflags和umdh的路徑加入到path中,預設為 c program files x86 windows kits 8.1 debug...

C 記憶體洩漏

記憶體洩漏 記憶體溢位 out of memory 通俗理解就是記憶體不夠,通常在執行大型軟體或遊戲時,軟體或遊戲所需要的記憶體遠遠超出了你主機內安裝的記憶體所承受大小,就叫記憶體溢位。記憶體洩漏 memory leak 是指程式中已動態分配的堆記憶體由於某種原因程式未釋放或無法釋放,造成系統記憶體...

dmalloc檢測程式記憶體洩漏

一 生成dmalloc靜態庫 編譯方法 configure prefix home program dmalloc 5.5.2 out enable threads make make install 注 如果使用c 那麼 make threadscxx make install 2 把生成的bin...