在c++程序中,內(nèi)存管理中經(jīng)常隱藏著很深的bug。
         雖然我們一般可以采用vector,string,map等容器自動(dòng)管理內(nèi)存,
但涉及多態(tài),繼承的時(shí)候也不可避免的要手動(dòng)管理,c++標(biāo)準(zhǔn)庫(kù)中提供的能一定程度上幫助我們。

用法:
1.需要包含頭文件

2.Constructor:explicit (X* p = 0) throw();
將指針p交給對(duì)象托管

3.Copy constructor:
(const &) throw();
template (const & a) throw();
指針的托管權(quán)會(huì)發(fā)生轉(zhuǎn)移

4.Destructor: ~();
釋放指針p指向的空間

5.提供了兩個(gè)成員函數(shù)
X* get() const throw();//返回保存的指針,對(duì)象中仍保留指針
X* release() const throw();//返回保存的指針,對(duì)象中不保留指針