可以在类'构造函数中初始化类型boost::scoped_ptr
的类成员吗?怎么样?
(不在初始化列表中)
答案 0 :(得分:25)
是。你可以使用reset()成员函数。
class foo {
public:
foo()
{
p.reset(new bar());
}
private:
boost::scoped_ptr<bar> p;
};
答案 1 :(得分:6)
scoped_ptr有一个方法scoped_ptr<T>::reset(T * p=0)
,您可以在封闭类的构造函数中调用它。