std::experimental::weak_ptr<T>::weak_ptr
来自cppreference.com
< cpp | experimental | weak ptr
| constexpr weak_ptr() noexcept; |
(1) | (库基础 TS) |
| weak_ptr( const weak_ptr& r ) noexcept; |
(2) | (库基础 TS) |
| template< class Y > weak_ptr( const weak_ptr<Y>& r ) noexcept; |
(2) | (库基础 TS) |
| template< class Y > weak_ptr( const std::experimental::shared_ptr<Y>& r ) noexcept; |
(2) | (库基础 TS) |
| weak_ptr( weak_ptr&& r ) noexcept; |
(3) | (库基础 TS) |
| template< class Y > weak_ptr( weak_ptr<Y>&& r ) noexcept; |
(3) | (库基础 TS) |
构造与 r 潜在共享对象的新 weak_ptr。
1) 默认构造函数。构造空
weak_ptr。2) 构造共享 r 所管理对象的新
weak_ptr。如果 r 不管理对象,则 *this 也不管理对象。除非 Y* 可隐式转换为 T*,或者 Y 为对于某个类型 U 和某个数值 N 的类型“N 个 U 的数组”,并且 T 为类型“(可能 cv 限定的)U 的位置边界的数组”,否则模板化重载不参与重载决议。3) 移动构造函数。从 r 向 *this 移动
weak_ptr 实例。此后,r 为空且 r.use_count() == 0。除非 Y* 可隐式转换为 T*,或者 Y 为对于某个类型 U 和某个数值 N 的类型“N 个 U 的数组”,并且 T 为类型“(可能 cv 限定的)U 的位置边界的数组”,否则模板化重载不参与重载决议。参数
| r | - | 将由此 std::experimental::weak_ptr 查看的 std::experimental::shared_ptr 或 std::experimental::weak_ptr |
异常
noexcept 说明:
noexcept
示例
| 本节未完成 原因:暂无示例 |
参阅
构造新的 weak_ptr ( std::weak_ptr<T> 的公开成员函数) | |
为 weak_ptr 赋值 ( std::weak_ptr<T> 的公开成员函数) |