6、記得在destructor中以delete對付pointer members
1、在constructor中添加pointer members
class要進行動態配置內存,會在構造函數裏以new配置內存,在析構函數裏delete釋放內存。因此必須記得所有在構造函數裏被分配內存的成員並delete。
在class中添加pointer member,幾乎總是需要:
1.在每個構造函數裏將指針初始化,若沒有構造函數爲他配置內存,應將其初始化爲0(NULL指針)。
2.在重載賦值運算符的函數中,將指針原有內存刪除並重新配置。
3.在析構函數刪除這個指針。
2、忘記delete
如果忘記在構造函數裏初始化指針或忘了在賦值運算符中處理指針,通常簡單的測試就能發現他們。然而,如果沒有在析構函數delete指針,運行代碼不會有明顯的錯誤,但是程序卻存在着內存泄漏,會慢慢佔據整個內存空間,最終無內存可用。