std::experimental::weak_ptr

来自cppreference.com
 
 
实验性
技术规范
文件系统库 (文件系统 TS)
库基础 (库基础 TS)
库基础 2 (库基础 TS v2)
库基础 3 (库基础 TS v3)
并行扩展 (并行 TS)
并行扩展 2 (并行 TS v2)
并发扩展 (并发 TS)
并发扩展 2 (并发 TS v2)
概念 (概念 TS)
范围 (范围 TS)
反射 (反射 TS)
数学特殊函数 (特殊函数 TR)
实验性非 TS 功能特性
模式匹配
线性代数
std::execution
契约
2D 图形
 
 
 
在标头 <experimental/memory> 定义
template< class T > class weak_ptr;
(库基础 TS)

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

成员类型

成员类型 定义
element_type std::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