Namespaces
Variants

std::experimental::observer_ptr<W>:: observer_ptr

From cppreference.net
constexpr observer_ptr ( ) noexcept ;
constexpr observer_ptr ( nullptr_t ) noexcept ;
(1) (библиотека fundamentals TS v2)
constexpr explicit observer_ptr ( element_type * p ) noexcept ;
(2) (библиотека fundamentals TS v2)
template < class W2 >
constexpr observer_ptr ( observer_ptr < W2 > other ) noexcept ;
(3) (библиотека fundamentals TS v2)
observer_ptr ( const observer_ptr & other ) = default ;
(4) (библиотека fundamentals TS v2)
(неявно объявлен)
observer_ptr ( observer_ptr && other ) = default ;
(5) (библиотека fundamentals TS v2)
(неявно объявлен)
1) Создает observer_ptr , который не имеет соответствующего наблюдаемого объекта.
2) Создает observer_ptr , который отслеживает p .
3) Создает observer_ptr , который отслеживает other. get ( ) . Эта перегрузка участвует в разрешении перегрузки только если W2 * преобразуем в element_type * .
4,5) Неявно объявленные конструкторы копирования и перемещения. Создает observer_ptr , который отслеживает other. get ( ) .

Параметры

p - указатель на отслеживаемый объект
other - другой observer_ptr для копирования