当类方法返回引用时如何处理smart_ptr

时间:2016-03-29 09:57:48

标签: c++ pointers c++11 memory-management smart-pointers

在我的项目中,我想使用smart_ptrs而不是原始指针。 现在,如果一个类方法返回一个指向自身的指针,我该如何正确地使用smart_poin来处理它?<​​/ p>

class bar{
public:
    std::shared_ptr<bar> foo(){std::shared_ptr<bar>(this);}
};

int main()
{
    auto a = std::make_shared<bar>();
    auto b = a->foo();
    std::cout << a.use_count() << std::endl; //outputs 1 
}

0 个答案:

没有答案