一個詭異的C++內存泄露問題。

delet被編譯成了兩個步驟:調相應析構函數,回收p指向的內存塊 即使父類沒聲明虛析構函數,第二步還是生效的,所以你Derived的內存區是被正確回收的,但Derived的內存區域(std::string)並不是連續區間,可能是這樣的東東(64byte+ptr) delet的第二步回收的就只是這(64byte+ptr) 65個字節 string內部關聯的那塊就泄露了 然後delete的第一步,調用
相關文章
相關標籤/搜索