C++:boost::scoped_ptr能否在构造函数中初始化?

10

在类的构造函数内,可以如何初始化boost::scoped_ptr类型的类成员?
(不在初始化列表中)

2个回答

25
可以。您可以使用reset()成员函数。
class foo {
public:
    foo()
    {
         p.reset(new bar());
    }
private:
  boost::scoped_ptr<bar> p;
};

1
能否在初始化列表中初始化它?如果可以,怎么做? - User

6

scoped_ptr有一个方法scoped_ptr<T>::reset(T * p=0),你可以在封闭类的构造函数中调用它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接