關於關於C++中delete語句的一些細節


眾所周知,delete 會釋放new出來的單個對象指針指向的內存,這個“釋放”的含義就是將這一塊內存標記為可用,但並不會刪除其指向的值。

這就很有意思了,在Codeblocks中執行如下語句:

Score* s=new Score(96,95);
delete s;
s->show();

實際上還是能看到顯示出來的分數的,而在dev C++中就會看到輸出了兩個垃圾值。

因此最好delete后把地址設置為NULL。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM