2011-01-14 100 views

回答

24

是的。你可以使用reset()成員函數。

class foo { 
public: 
    foo() 
    { 
     p.reset(new bar()); 
    } 
private: 
    boost::scoped_ptr<bar> p; 
}; 
+1

是否可以在初始化列表中初始化它?如果是這樣,怎麼樣? – User 2011-10-17 20:39:31

6

scoped_ptr有一個方法scoped_ptr<T>::reset(T * p=0)你可以在你的封閉類的構造函數中調用它。