namespace cpp

C++ lernen, kennen, anwenden

Benutzer-Werkzeuge

Webseiten-Werkzeuge


kennen:lib:weak_ptr

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

kennen:lib:weak_ptr [2016-11-19 18:55] (aktuell)
Zeile 1: Zeile 1:
 +====== weak_ptr<​T>​ ======
 +''#​include''​ [[..:​include:​memory]]
 +
 +Referenzzählender intelligenter Zeiger ohne Besitzverhältins auf dynamisches Objekt mit Basistyp ''​T''​.
 +===== Methoden =====
 +|''​expired()''​| Liefert ''​true'',​ wenn das verwaltete Objekt gelöscht wurde  |
 +|''​lock()''​ | Liefert ''​shared_ptr<​T>''​ auf verwaltetes Objekt |
 +|''​reset()''​| Löst Verbindung zum besitzverwaltenden ''​shared_ptr<​T>''​ |
 +|''​use_oount()''​| Liefert Anzahl der auf das verwaltete Objekt verweisenden ''​shared_ptr<​T>''​ |
 +
 +===== Siehe auch =====
 + ​[[.:​shared_ptr|shared_ptr<​T>​]].
 +
 +===== Beispiel =====
 +<code cpp weak_ptr.cpp>​
 +#include <​memory>​
 +#include <​iostream>​
 +
 +int main()
 +{
 +  auto p = std::​make_shared<​double>​(3.1415);​
 +  std::​weak_ptr<​double>​ w(p);
 +
 +  std::cout << "​Objekt noch vorhanden: " ​
 +            << std::​boolalpha << !w.expired() << '​\n';​
 +
 +  if (auto q = w.lock()) *q = 2.718;
 +  else std::cout << "​Objekt verloren\n";​
 +
 +  std::cout << *p << '​\n';​
 +}
 +</​code>​
 +
  
kennen/lib/weak_ptr.txt · Zuletzt geändert: 2016-11-19 18:55 (Externe Bearbeitung)