繁体   English   中英

将 boost::shared_ptr 初始化为 NULL

[英]Initialize a boost::shared_ptr to NULL

我可以用NULL值初始化shared_ptr吗?

boost::shared_ptr<Type> s_obj(NULL);

如果没有,那怎么办?

默认构造为您执行此操作:

template<class T> class shared_ptr
{
public:

    explicit shared_ptr(T * p = 0): px(p)
    { 
        //Snip
    }

    //...

private:

    T * px;            // contained pointer
    count_type * pn;   // ptr to reference counter
};

这是默认构造,即:

boost::shared_ptr<Type> s_obj;

s_obj现在持有一个空指针,并在经过实际测试时计算为布尔值false;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM