C++:new 和 delete
生活随笔
收集整理的這篇文章主要介紹了
C++:new 和 delete
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在 C++ 中 , 使用 new 操作符動(dòng)態(tài)申請(qǐng)內(nèi)存的時(shí)候,如果申請(qǐng)失敗,則會(huì)拋出 ?bad_alloc異常
當(dāng)使用 ?delete 釋放一塊內(nèi)存的時(shí)候 , 有些編譯器上delete 不能判斷一塊內(nèi)存是不是由 new 申請(qǐng)的
如 ?:
int i = 0;
int *p = &i;
delete p;
p = NULL; // delete 以后迅速置為NULL ,這是一個(gè)好習(xí)慣
這樣的代碼在許多編譯器上都能編譯通過(guò),但是這是錯(cuò)誤的,要注意
?
還有一個(gè)關(guān)于刪除 ?0 地址指針的 問(wèn)題
delete (char*)0;
C++ 保證 這條語(yǔ)句是正確的,但是他沒(méi)有任何意義,不做任何動(dòng)作
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/wowk/p/3219767.html
總結(jié)
以上是生活随笔為你收集整理的C++:new 和 delete的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 四十六、Qt网络(六)UDP
- 下一篇: C、C++ 宽字符WCString转为c