template<class t>
class auto_pointer
{
public:
~auto_pointer();
auto_pointer(t * = NULL); // changed
auto_pointer(const auto_pointer &);
auto_pointer &operator=
(const auto_pointer &);
operator t *() const; // replaces get
t **operator&(); // new
t * const *operator&() const; // new
t& operator*() const;
t* operator->() const;
t* release() const;
private:
mutable bool is_owner_;
t *pointer_;
};
//End of File