Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

41

21.09.2015, 14:50

Sag ich doch...

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

42

21.09.2015, 14:50

Es wird dadurch robuster, dass man sich über die Existenz des Objekts hinter dem Zeiger keine Gedanken mehr machen muss.

Diese Frage muss man sich sowohl mit unique_ptr als auch mit shared_ptr stellen, im Falle von shared_ptr ist die Antwort wesentlich komplizierter...

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

43

21.09.2015, 14:52

Mit der Robustheit von shared_ptr hat das aber nichts zu tun. Shared_ptr ist nicht robuster als unique_ptr. Einer mag gelöscht werden und man greift bei falschem Design auf Müll zu, während man bei dem anderen Speicher eventuell gar nicht mehr freigeben kann.
Smart-Pointer lösen kein wirklich technisches, sondern eher ein semantisches Problem: Wem gehört ein Objekt und wer ist für den Lebenszyklus zuständig?
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

44

21.09.2015, 14:54

Ich sagte ja bereits, robust ist vll das falsche Wort dafür.
Auf den ersten Blick einfacher zu handhaben trifft es aber denke ich ganz gut.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

45

21.09.2015, 14:56

Aber eben nur auf den ersten Blick. Wie gesagt denke ich, dass viele das Konzept am Anfang falsch verstehen nach dem Motto: "Ach toll, die machen alles für mich, Raw ist also alter manueller Müll, den man nicht mehr nimmt". Dass das Konzept eigentlich komplexer ist und noch immer komplexe Fragen offen lässt, das vermutet eben nicht jeder gleich.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

H5::

Treue Seele

Beiträge: 368

Wohnort: Kiel

  • Private Nachricht senden

46

21.09.2015, 15:08

Nun ja wenn man schon versuche hipster programmer zu sein und sich solange biegt um durch jedes pattern zu passen, dann wollte ich auch die absolut richtigen tools nutzen, sch**** auf trade offs für speed gibts C, asm usw.

Und und diesem fall kam mir eben der weak_ptr in den Kopf. Besitzer kann löchen und kontrollieren wie er will, keine cyclic, nur ein owner. Klang halt passend und interessant. Aber ich bin auch wohl zu lange aus dem C++ Geschäft raus.
:love: := Go;

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

47

21.09.2015, 19:14

Smart-Pointer lösen kein wirklich technisches, sondern eher ein semantisches Problem


Die Aussage finde ich mehr als zutreffend. Und semantisch das sofort unterscheiden zu können ist enorm hilfreich. Seit dem macht mir c++ deutlich mehr Spaß als früher.

Werbeanzeige