Namespaces
Variants

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

From cppreference.net
constexpr weak_ptr ( ) noexcept ;
(1) (Bibliotheksfundament TS)
weak_ptr ( const weak_ptr & r ) noexcept ;
(2) (Bibliotheksfundament TS)
template < class Y >
weak_ptr ( const weak_ptr < Y > & r ) noexcept ;
(2) (Bibliotheksfundament TS)
template < class Y >
weak_ptr ( const std:: experimental :: shared_ptr < Y > & r ) noexcept ;
(2) (Bibliotheksfundament TS)
weak_ptr ( weak_ptr && r ) noexcept ;
(3) (Bibliotheksfundament TS)
template < class Y >
weak_ptr ( weak_ptr < Y > && r ) noexcept ;
(3) (Bibliotheksfundament TS)

Konstruiert einen neuen weak_ptr , der möglicherweise ein Objekt mit r teilt.

1) Standardkonstruktor. Erstellt einen leeren weak_ptr .
2) Konstruiert einen neuen weak_ptr , der ein von r verwaltetes Objekt teilt. Falls r kein Objekt verwaltet, verwaltet auch * this kein Objekt. Die templatisierten Überladungen nehmen nicht an der Überladungsauflösung teil, es sei denn, entweder ist Y* implizit konvertierbar zu T* , oder Y ist der Typ "Array von N U " für einen Typ U und eine Zahl N , und T ist der Typ "Array unbekannter Größe von (möglicherweise cv-qualifiziertem) U ".
3) Move-Konstruktoren. Bewegt eine weak_ptr -Instanz von r nach * this . Danach ist r leer und r. use_count ( ) == 0 . Die templatisierte Überladung nimmt nicht an der Überladungsauflösung teil, es sei denn, entweder Y* ist implizit konvertierbar zu T* , oder Y ist der Typ "Array von N U " für einen Typ U und eine Zahl N , und T ist der Typ "Array unbekannter Länge von (möglicherweise cv-qualifiziertem) U ".

Inhaltsverzeichnis

Parameter

r - a std::experimental::shared_ptr or std::experimental::weak_ptr that will be viewed by this std::experimental::weak_ptr

Ausnahmen

noexcept Spezifikation:
noexcept

Beispiel

Siehe auch

erstellt einen neuen weak_ptr
(öffentliche Elementfunktion von std::weak_ptr<T> )
weist den weak_ptr zu
(öffentliche Elementfunktion von std::weak_ptr<T> )