避免在程式碼中直接使用delete關鍵字

lixianmin發表於2008-09-09
 

避免在程式碼中直接使用delete關鍵字,這需要:

1、在定義單個資料物件時儘量在stack上分配記憶體;如果必須使用free store記憶體的話,則使用std::auto_ptr<...>定義

2、使用傳引用方式傳參,避免使用傳指標的方式,這樣既可以免去指標判NULL的檢查,又可以在不失去物件所有權的前提下傳遞std::auto_ptr<...> 物件

3、在定義陣列時,使用std::vector<char> vBuffer(nSize)的方式,而不是使用 char* a=new char[nSize];這樣可以讓容器替你維護這段記憶體

相關文章