std::experimental::weak_ptr

来自cppreference.com
在标头 <experimental/memory> 定义
template< class T > class weak_ptr;
(库基础 TS)

std::experimental::weak_ptrstd::weak_ptr 的修改过的版本,它与 std::experimental::shared_ptr 互操作,且支持数组。

成员类型

成员类型定义
element_typestd::remove_extent_t<T>

成员函数

构造新的 weak_ptr
(公开成员函数)

等同于 std::weak_ptr 的成员和非成员

成员函数

下列成员函数与 std::experimental::shared_ptrstd::experimental::weak_ptr 而非 std::shared_ptrstd::weak_ptr 一起工作。除此之外其行为相同。

销毁 weak_ptr
(std::weak_ptr<T> 的公开成员函数)
weak_ptr 赋值
(std::weak_ptr<T> 的公开成员函数)
修改器
释放被管理对象的所有权
(std::weak_ptr<T> 的公开成员函数)
交换被管理对象
(std::weak_ptr<T> 的公开成员函数)
观察器
返回管理该对象的 shared_ptr 对象数量
(std::weak_ptr<T> 的公开成员函数)
检查被引用的对象是否已删除
(std::weak_ptr<T> 的公开成员函数)
创建管理被引用的对象的 shared_ptr
(std::weak_ptr<T> 的公开成员函数)
提供弱指针的基于拥有者的排序
(std::weak_ptr<T> 的公开成员函数)

非成员函数

此非成员函数声明于 std::experimental 命名空间,并与 std::experimental::weak_ptr 而非 std::weak_ptr 一起工作,除此之外其表现与对应的 C++14 函数相同。

特化 std::swap 算法
(函数模板)

Example