std::enable_shared_from_this<T>::weak_from_this

std::weak_ptr<T> weak_from_this() noexcept;
(1) (C++17 起)
std::weak_ptr<T const> weak_from_this() const noexcept;
(2) (C++17 起)

返回 std::weak_ptr<T> ,跟踪所有既存的指代 *thisstd::shared_ptr 所拥有的 *this 的所有权。

返回值

与既存的 std::shared_ptr 共享 *this 所有权的 std::weak_ptr<T>

注解

weak_from_this 复制作为 enable_shared_from_this 一部分的仅用于阐释的 weak_ptr 成员。

功能特性测试 标准 功能特性
__cpp_lib_enable_shared_from_this 201603L (C++17) std::enable_shared_from_this::weak_from_this

示例

参阅

(C++11)
拥有共享对象所有权语义的智能指针
(类模板)