有没有像maybe_owns_ptr这样的东西

时间:2017-10-18 02:12:58

标签: c++ pointers

一种智能指针,其功能大致如下:

class maybe_owns_ptr {
public:
    maybe_owns_ptr(void* ptr, bool owns)
      : ptr(ptr)
      , owns(owns)
    {}

    ~maybe_owns_ptr()
    {
        if (owns) delete ptr;
    }
private:
    void* ptr;
    bool owns;
};

(该类应该被模板化以包含指针的类型,删除函数,以及其他构造函数和赋值函数等,但为了简洁我省略了它)

{{1>是否存在一个类,它可以存储它拥有(并将解构)的指针和它不拥有(因此不会解构)的指针或具有类似功能的指针}}?我可以使用其他std组件实现此功能,而无需自己创建新类吗?

0 个答案:

没有答案