Namespaces
Variants

std::experimental::weak_ptr<T>:: weak_ptr

From cppreference.net
constexpr weak_ptr ( ) noexcept ;
(1) (库基础技术规范)
weak_ptr ( const weak_ptr & r ) noexcept ;
(2) (库基础技术规范)
template < class Y >
weak_ptr ( const weak_ptr < Y > & r ) noexcept ;
(2) (库基础技术规范)
template < class Y >
weak_ptr ( const std:: experimental :: shared_ptr < Y > & r ) noexcept ;
(2) (库基础技术规范)
weak_ptr ( weak_ptr && r ) noexcept ;
(3) (库基础技术规范)
template < class Y >
weak_ptr ( weak_ptr < Y > && r ) noexcept ;
(3) (库基础技术规范)

构造一个新的 weak_ptr ,该指针可能与 r 共享对象。

1) 默认构造函数。构造空的 weak_ptr
2) 构造新的 weak_ptr ,其共享由 r 管理的对象。若 r 未管理任何对象,则 * this 亦不管理任何对象。模板化重载仅在以下情况参与重载决议: Y* 可隐式转换为 T* ,或 Y 为“ N U 类型元素的数组”类型且 T 为“(可能带 cv 限定符的) U 类型未知边界数组”类型。
3) 移动构造函数。将 weak_ptr 实例从 r 移动至 * this 。此后, r 为空且 r. use_count ( ) == 0 。模板化重载仅在以下情况下参与重载决议: Y* 可隐式转换为 T* ,或 Y 是“ N U 的数组”类型(其中 U 为某类型, N 为某数值),且 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> 的公开成员函数)