Namespaces
Variants

std::experimental:: weak_ptr

From cppreference.net
定义于头文件 <experimental/memory>
template < class T > class weak_ptr ;
(库基础技术规范)

std::experimental::weak_ptr std::weak_ptr 的改进版本,可与 std::experimental::shared_ptr 交互操作并支持数组类型。

目录

成员类型

成员类型 定义
element_type std:: remove_extent_t < T >

成员函数

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

std:: weak_ptr 相同的成员和非成员

成员函数

以下成员函数使用 std::experimental::shared_ptr 替代 std::shared_ptr ,并使用 std::experimental::weak_ptr 替代 std::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 算法
(函数模板)

示例