共用方式為


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

型別 auto_ptr物件的建構函式。

Typedef

element_type

這個型別是樣板參數 Type的同義字。

成員函式

get

成員函式傳回儲存的 myptr指標。

版本

這個成員以 null 指標取代儲存的指標 myptr 並傳回之前儲存的指標。

reset

由於函式呼叫,,,才能儲存的指標值 myptr 變更成員函式評估運算式,則為 delete myptr,但是。 它是由 ptr然後取代儲存的指標。

運算子

operator=

auto_ptr 物件擁有權轉移到另一個的指派運算子。

operator*

型別 auto_ptr物件的取值運算子。

operator->

允許成員存取運算子。

運算子 auto_ptrOther<>

從一種型別轉換至其他類型的 auto_ptrauto_ptr

運算子 auto_ptr_refOther<>

auto_ptr 轉換成 auto_ptr_ref

需求

標題:<記憶體>

命名空間: std

請參閱

參考

C++ 標準程式庫中的執行緒安全

unique_ptr 類別

其他資源

<memory> 成員