template<class T>spa
class shared_ptr{指針
public:class
T& operator*( ) const {return *px;}迭代器
T* operator->( ) const {return px;}poi
shared_ptr(T* p) : px(p) { }sse
private:co
T* px;block
long* pn;new
}return
strcut Foo{
void method(void) { }
};
shared_ptr<Foo> sp(new )
Foo f(*sp);
sp->method( );
迭代器,pointer-like classes, 智能指針