std::weak_ptr<T>:operator=
Von cppreference.com
| weak_ptr& operator=( const weak_ptr& r ) noexcept; |
(1) | (seit C++11) |
| template< class Y > weak_ptr& operator=( const weak_ptr<Y>& r ) noexcept; |
(2) | (seit C++11) |
| template< class Y > weak_ptr& operator=( const shared_ptr<Y>& r ) noexcept; |
(3) | (seit C++11) |
| weak_ptr& operator=( weak_ptr&& r ) noexcept; |
(4) | (seit C++11) |
| template< class Y > weak_ptr& operator=( weak_ptr<Y>&& r ) noexcept; |
(5) | (seit C++11) |
Ersetzt das verwaltete Objekt durch das von r verwaltete. Das Objekt wird mit r geteilt. Wenn r kein Objekt verwaltet, verwaltet *this ebenfalls kein Objekt.
1-3) Äquivalent zu std::weak_ptr<T>(r).swap(*this).
4,5) Äquivalent zu std::weak_ptr<T>(std::move(r)).swap(*this).
Inhalt |
[edit] Parameter
| r | - | Smartpointer zum Teilen eines Objekts mit |
[edit] Rückgabewert
*this
[edit] Hinweise
Die Implementierung kann die Anforderungen erfüllen, ohne ein temporäres weak_ptr-Objekt zu erstellen.
[edit] Fehlerberichte
Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | angewendet auf | Verhalten wie veröffentlicht | Korrigiertes Verhalten |
|---|---|---|---|
| LWG 2315 | C++11 | Die Move-Semantik war für weak_ptr nicht aktiviert |
aktiviert |
[edit] Siehe auch
erstellt einen neuen weak_ptr(public member function) | |
| Vertauscht die verwalteten Objekte (public member function) |