auto_ptr 類別
在確認的資源周圍包裝的智慧型指標自動終結資源,當控制項離開區塊時。
更能夠 unique_ptr 類別已由 auto_ptr取代。 如需詳細資訊,請參閱unique_ptr 類別。
如需 throw() 和例外狀況處理的詳細資訊,請參閱 例外狀況規格。
template<class Type>
class auto_ptr {
public:
typedef Type element_type;
explicit auto_ptr(Type *_Ptr = 0) throw();
auto_ptr(auto_ptr<Type>& _Right) throw();
template<class Other>
operator auto_ptr<Other>() throw();
template<class Other>
auto_ptr<Type>& operator=(auto_ptr<Other>& _Right) throw();
template<class Other>
auto_ptr(auto_ptr<Other>& _Right);
auto_ptr<Type>& operator=(auto_ptr<Type>& _Right);
~auto_ptr();
Type& operator*() const throw();
Type *operator->()const throw();
Type *get() const throw();
Type *release()throw();
void reset(Type *_Ptr = 0);
};
參數
_Right
取得 auto_ptr 的現有資源的。_Ptr
指定指標取代儲存的指標。
備註
樣板類別描述智慧型指標,呼叫 auto_ptr, 所配置物件。 指標必須是 null 或指定 new配置的物件。 如果儲存的值指派給另一個物件, auto_ptr 轉移擁有權。(它在傳送之後取代儲存值以 null 指標)。auto_ptr<Type> 的解構函式刪除配置物件。 auto_ptr<Type> 可確保配置物件即使將擲回的例外狀況會自動刪除時,控制項離開區塊時,。 您不應建構擁有相同的物件的兩個 auto_ptr<Type> 物件。
您可以將 auto_ptr<Type> 物件的值當做引數傳遞至函式呼叫。 auto_ptr 不可以是任何標準程式庫容器的項目。 您無法可靠地管理 auto_ptr<Type> 物件序列與標準樣板程式庫 (STL) 容器的。
成員
建構函式
型別 auto_ptr物件的建構函式。 |
Typedef
這個型別是樣板參數 Type的同義字。 |
成員函式
成員函式傳回儲存的 myptr指標。 |
|
這個成員以 null 指標取代儲存的指標 myptr 並傳回之前儲存的指標。 |
|
由於函式呼叫,,,才能儲存的指標值 myptr 變更成員函式評估運算式,則為 delete myptr,但是。 它是由 ptr然後取代儲存的指標。 |
運算子
從 auto_ptr 物件擁有權轉移到另一個的指派運算子。 |
|
型別 auto_ptr物件的取值運算子。 |
|
允許成員存取運算子。 |
|
從一種型別轉換至其他類型的 auto_ptrauto_ptr。 |
|
從 auto_ptr 轉換成 auto_ptr_ref。 |
需求
標題:<記憶體>
命名空間: std