Valgrind工具測試C++工程記憶體洩漏問題
-
- 标題一 環境配置
- 标題二 運作
- 标題結果分析
标題一 環境配置
linux配置連結
标題二 運作
2.1:在指令行中輸入:script -f log.txt
用于開啟指令儲存log.txt。
2.2 在指令行中輸入:valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all ./可執行檔案
2.3 在指令行中輸入:exit
結束log.txt的檔案儲存。
标題結果分析
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiYTMfhHLlN3XnxCM38FdsYkRGZkRG9lcvx2bjxCMy8VZ6l2cs0zZq5EMrpmTyUEROZmRYNWQClGVF5UMR9Fd4VGdsATNfd3bkFGazxycykFaKdkYzZUbapXNXlleSdVY2pESa9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL5kzYklDN2EGM5MDZyU2MhNDOhRzMhFmY4kjY3IGMyQ2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
在輸出的log文檔的末尾,會有上面的統計資訊,其中definitely lost是明确有記憶體洩漏的子產品; indirectly lost:是間接存在記憶體洩漏的子產品; possibly loss是可能存在記憶體洩漏的子產品;其他的和記憶體洩露無關。然後在全文搜尋關鍵字:definitely lost, indirectly lost, possibly loss去定位具體的洩漏子產品即可。