您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關C++使用new時的注意事項,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
new其實就是告訴計算機開辟一段新的空間,但是和一般的聲明不同的是,new開辟的空間在堆上,而一般聲明的變量存放在棧上。通常來說,當在局部函數中new出一段新的空間,該段空間在局部函數調用結束后仍然能夠使用,可以用來向主函數傳遞參數。另外需要注意的是,new的使用格式,new出來的是一段空間的首地址。所以一般需要用指針來存放這段地址。
如果在構造函數中使用new來初始化指針成員,則應在析構函數中使用delete
new和delete必須相互兼容。new對應于delete,new[]對應于delete[]
如果有多個構造函數,則必須以相同的方式使用new,要么都帶中括號,要么都不帶。因為只有一個析構函數,所有的構造函數都必須與它兼容。
與上面一條例外的是可以在一個構造函數中使用new初始化指針,而在另一個構造函數中將指針初始化為空,這是因為delete(無論是帶中括號還是不帶中括號)可以用于空指針。
C++傳統上更喜歡用簡單的0,而不是等價的NULL,但C++11的nullptr是更好的選擇。
以上就是C++使用new時的注意事項,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。