首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::enable_shared_from_this::enable_shared_from_this

constexpr enable_shared_from_this();

(1)

(since C++11)

enable_shared_from_this( const enable_shared_from_this<T>&obj );

(2)

(since C++11)

构造新enable_shared_from_this对象。私人std::weak_ptr<T>成员是值初始化的。

参数

obj

-

an enable_shared_from_this to copy

例外

noexcept规格:

noexcept

二次

代码语言:javascript
复制
#include <memory>
 
struct Foo : public std::enable_shared_from_this<Foo> {
    Foo() {}  // implicitly calls enable_shared_from_this constructor
    std::shared_ptr<Foo> getFoo() { return shared_from_this(); }
};
 
int main() {
    std::shared_ptr<Foo> pf1(new Foo);
    auto pf2 = pf1->getFoo();  // shares ownership of object with pf1
}

二次

另见

shared_ptr (C++11)

smart pointer with shared object ownership semantics (class template)

代码语言:txt
复制
 © cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券