C++: Smart Pointer

Einen Smartpointer auswählen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Welche Variante eines Smartpointers in welchen Situationen die beste Wahl ist, das vermitteln die Auswahlkriterien, die dieses Video offenlegt.
01:58

Transkript

C++ bietet drei verschiedene Arten von Smart Pointern: Unique Pointer, Shared Pointer und Weak Pointer. Wie also wähle ich aus, welche Art ich in welcher Situation verwenden soll? Meine Strategie ist, mit einer Standardauswahl zu beginnen und von dort an zu spezialisieren. Für die meisten Zwecke wähle ich standardmäßig einen Shared Pointer. Er ist leistungsfähig und flexibel, dabei aber gleichzeitig sicher. Ein derartiger Zeiger funktioniert größtenteils wie ein nicht verwalteter Zeiger, verwaltet aber Objekte dennoch angemessen. Einen Weak Pointer wähle ich für solche Fälle, wo ich einen optionalen Wert brauche. D. h., ich verlange nicht, dass ein Zeiger gültig ist, ich muss lediglich wissen, ob er gültig ist oder nicht. Das ist nützlich, um zirkuläre Referenzen aufzubrechen, doch es ist auch nützlich für andere Fälle, wo ich auf eine Ressource verweisen muss, die von einem anderen Objekt verwaltet wird. Schließlich wähle ich einen Unique Pointer, in den Fällen, wo ich wissen muss, dass eine Ressource für nur genau ein Objekt zu einem bestimmten Zeitpunkt verfügbar ist. Dies ist eine 1:1-Beziehung. Ein Unique Pointer kann nicht kopiert werden. Dies ist eigentlich etwas irreführend, weil man eine L-Referenz eines Unique Pointers nehmen kann. Deswegen bevorzugen manche Entwickler den Unique Pointer als Standardauswahl und greifen nur dann zum Shared Pointer, wo es tatsächlich notwendig wird, den Zeiger gemeinsam zu verwenden. Sicherlich können Sie dies tun, wenn Sie möchten. Es ist wirklich eine Sache des Stils. Ich für meinen Teil mag das explizite Wesen des Shared Pointers und nicht das implizite, einen Unique Pointer mit L-Referenzen zu verwenden. Dies ist meine Strategie, und Sie sind eingeladen, sie als Ausgangspunkt zu verwenden. Ich empfehle wärmstens, dass Sie einige Zeit investieren, mit den verschiedenen Arten von Smart Pointern zu arbeiten. Dann entwickeln Sie eine Strategie, die für Sie geeignet ist.

C++: Smart Pointer

Lernen Sie die verschiedenen Typen von intelligenten Zeigern kennen, wie sie eingesetzt werden und wie sie funktionieren.

29 min (8 Videos)
Derzeit sind keine Feedbacks vorhanden...
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:13.12.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!