<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Eure Erfahrungen mit shared, weak... Pointern]]></title><description><![CDATA[<p>Habt ihr schon shared Pointer und Co in größeren Projekten eingesetzt? Gabs Probleme mit anderen Frameworks oder sonstigem oder hat alles gut funktioniert?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/245841/eure-erfahrungen-mit-shared-weak-pointern</link><generator>RSS for Node</generator><lastBuildDate>Fri, 18 Sep 2026 12:09:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/245841.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 19 Jul 2009 18:34:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Sun, 19 Jul 2009 18:34:55 GMT]]></title><description><![CDATA[<p>Habt ihr schon shared Pointer und Co in größeren Projekten eingesetzt? Gabs Probleme mit anderen Frameworks oder sonstigem oder hat alles gut funktioniert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1745888</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1745888</guid><dc:creator><![CDATA[skyPilot]]></dc:creator><pubDate>Sun, 19 Jul 2009 18:34:55 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Sun, 19 Jul 2009 20:04:02 GMT]]></title><description><![CDATA[<p>Das sind so grundlegende Sachen, wie soll es da Probleme geben? Die sind doch dazu da, sich vom <em>new/delete</em>-Problem zu befreien.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1745943</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1745943</guid><dc:creator><![CDATA[TyRoXx]]></dc:creator><pubDate>Sun, 19 Jul 2009 20:04:02 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Sun, 19 Jul 2009 20:30:58 GMT]]></title><description><![CDATA[<p>Ich hatte da auch nie Probleme. Man muss halt nur aufpassen, dass man bei shared_ptr keine Zyklen aufbaut, die werden dann nämlich nicht mehr abgebaut. Obwohl, aufbauen darf man Zyklen natürlich schon, man muss sie dann nur rechtzeitig durchbrechen oder stellenweise weak_ptr benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1745962</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1745962</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 19 Jul 2009 20:30:58 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 07:20:06 GMT]]></title><description><![CDATA[<blockquote>
<p>Habt ihr schon shared Pointer und Co in größeren Projekten eingesetzt?</p>
</blockquote>
<p>Genau einmal, weil ich Referenzzaehlung fuer Objekte genau einer Klasse brauchte (und zwar aus Performancegruenden). Ansonsten finde ich sie viel zu sehr gehyped.</p>
<blockquote>
<p>new/delete-Problem</p>
</blockquote>
<p>Es gibt kein new/delete-Problem.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746095</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746095</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Mon, 20 Jul 2009 07:20:06 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 07:48:37 GMT]]></title><description><![CDATA[<p>skyPilot schrieb:</p>
<blockquote>
<p>Habt ihr schon shared Pointer und Co in größeren Projekten eingesetzt?</p>
</blockquote>
<p>Ja. Wobei natürlich die Frage vorhanden ist, was ein grösseres Projekt ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>skyPilot schrieb:</p>
<blockquote>
<p>Gabs Probleme mit anderen Frameworks oder sonstigem oder hat alles gut funktioniert?</p>
</blockquote>
<p>Es gab genau zwei Probleme:<br />
- Übernutzung<br />
- Der Kompiler ist bei einem Vergleich abgestürzt.</p>
<pre><code class="language-cpp">if(mysharedptr != nullptr) // &lt;- hat den Kompiler zum Absturz gebracht
if(nullptr != mysharedptr) // &lt;- hat funktioniert
</code></pre>
<p>Also das Problem war eher geringfügig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>TyRoXx schrieb:</p>
<blockquote>
<p>Die sind doch dazu da, sich vom <em>new/delete</em>-Problem zu befreien.</p>
</blockquote>
<p>Was für ein <em>new/delete</em>-Problem denn? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746107</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746107</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Mon, 20 Jul 2009 07:48:37 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 10:18:00 GMT]]></title><description><![CDATA[<p>knivil schrieb:</p>
<blockquote>
<p>Genau einmal, weil ich Referenzzaehlung fuer Objekte genau einer Klasse brauchte (und zwar aus Performancegruenden). Ansonsten finde ich sie viel zu sehr gehyped.</p>
<blockquote>
<p>new/delete-Problem</p>
</blockquote>
<p>Es gibt kein new/delete-Problem.</p>
</blockquote>
<p>Stimmt! Wenn das Programm beendet wird, wird das OS ohnehin allen Speicher freigegeben. Und wer die Doku sorgfältig liest, wird immer wissen, wer für's delete() verantwortlich ist. Und die paar Abstürze wegen mehrfachem delete() machen Braten auch nicht fett. Unsere Kunden finden trotzdem, dass wir echt tolle Software machen. Es gibt kein new/delete-Problem, weil wir alle <strong>Helden</strong> sind <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746184</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746184</guid><dc:creator><![CDATA[DStefan]]></dc:creator><pubDate>Mon, 20 Jul 2009 10:18:00 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 10:31:29 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/11421">@DStefan</a>,<br />
Nur ein Anfänger hat Probleme mit <em>new/delete</em>. Ich persönlich hatte schon lange keine Speicherlecks mehr, keine doppelten delete, die Verantwortung für den Speicher ist immer ganz klar aufgetrennt, nämlich derjenige, welcher den Speicher anfordert, gibt den Speicher auch wieder frei. Ich mag mich nicht an den letzten Absturz wegen eines solchen Fehlers erinnern.</p>
<p>Und ich verwende <code>boost::shared_ptr</code> kaum! Es ist nur eine Frage des Designs des Programmes und der Erfahrung des Programmierers. Wen jemand <code>boost::shared_ptr</code> verwendet, um seine Defizite in Erfahrung und dem Design des Programmes auszugleichen, dann ist dies so ziemlich der falsche Weg.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746190</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746190</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Mon, 20 Jul 2009 10:31:29 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 10:49:27 GMT]]></title><description><![CDATA[<p>Dravere schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/11421">@DStefan</a>,<br />
Nur ein Anfänger hat Probleme mit <em>new/delete</em>. Ich persönlich hatte schon lange keine Speicherlecks mehr, keine doppelten delete, die Verantwortung für den Speicher ist immer ganz klar aufgetrennt, nämlich derjenige, welcher den Speicher anfordert, gibt den Speicher auch wieder frei. Ich mag mich nicht an den letzten Absturz wegen eines solchen Fehlers erinnern.</p>
<p>Und ich verwende <code>boost::shared_ptr</code> kaum! Es ist nur eine Frage des Designs des Programmes und der Erfahrung des Programmierers. Wen jemand <code>boost::shared_ptr</code> verwendet, um seine Defizite in Erfahrung und dem Design des Programmes auszugleichen, dann ist dies so ziemlich der falsche Weg.</p>
<p>Grüssli</p>
</blockquote>
<p>Sieh an! Ich hatte immer gedacht, es sei genau anders herum: Erfahrene Programmierer verwenden Smart-Pointer, weil sie genau wissen, was sie daran haben.</p>
<p>Ich brauche keine klare &quot;Auftrennung&quot; der Verantwortung für ein Objekt, weil es automaitsch gelöscht wird, wenn's keiner mehr verwendet. Ich braucht mein Design nicht zu verändern, bloß um sicher zu stellen, das für jedes new() auch bestimmt genau ein delete() erfolgt. Das führt in der Regel zu klarerem Design. Ich brauche mich beim Auftreten von Exceptions nicht darum zu kümmern, dass aller angeforderter Speicher auch in diesem Fall korrekt freigegeben wird.</p>
<p>Kurz: Ich habe kapiert, was RAII bedeutet. Und ich verschwende keine Zeit damit, mir über Probleme Gedanken zu machen, die fast immer durch Verwendung von Smart Pointern vermieden werden können. Da gib's wichtigeres.</p>
<p>Stefan.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746202</guid><dc:creator><![CDATA[DStefan]]></dc:creator><pubDate>Mon, 20 Jul 2009 10:49:27 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 11:47:24 GMT]]></title><description><![CDATA[<p>DStefan schrieb:</p>
<blockquote>
<p>Sieh an! Ich hatte immer gedacht, es sei genau anders herum: Erfahrene Programmierer verwenden Smart-Pointer, weil sie genau wissen, was sie daran haben.</p>
</blockquote>
<p>1. Erfahrene Programmierer setzen die Mittel an den Stellen ein, wo sie auch sinnvoll sind. Das heisst im allgemeinen aber nicht, dass man nur noch <code>shared_ptr</code> oder <em>Smart-Pointer</em> verwendet. Das zeugt meistens eher von schlechten Programmierern, welche nicht ausgewogen oder überlegt programmieren.<br />
2. Ich habe von <code>shared_ptr</code> geredet, dass ist ein himmelweiter Unterschied zu <em>Smart-Pointern</em>. Der <em>Shared-Pointer</em> ist nur einer von vielen verschiedenen <em>Smart-Pointern</em>.</p>
<p>Für RAII braucht man keinen <code>shared_ptr</code> , sondern meistens wenn schon einen <code>scoped_ptr</code> / <code>auto_ptr</code> oder im zukünftigen Standard den <code>unique_ptr</code> .<br />
Und wenn ich dich also richtig verstanden habe, dann hast du lieber ein schlechtes Design, dafür eine einfache Handhabung von Speicher? Na gut, ich habe lieber eine gut durchdachte Bibliothek.<br />
Ein <code>shared_ptr</code> ist meistens gar nicht nötig und bedeutet nur einen unnötigen Overhead. Es ist ja auch sehr typisch für C++, dass man im allgemeinen sowieso kaum Zeiger benötigt und wenn, dann sind sie meistens sehr eng an Klassen oder einem Scope gekapselt. Wodurch sich dann eher ein <code>scoped_ptr</code> anbietet.<br />
Sonstige Speicherverwaltung wird in C++ auch oft Containern überlassen. Was allerdings auch wieder ein typisches Beispiel ist, wo intern Zeiger verwendet werden, welche an eine Klasse gebunden sind, wodurch <code>shared_ptr</code> unötig ist. Zum Teil ist in solchen Fällen sogar ein <code>scoped_ptr</code> hinderlich. RAII kann aber trotzdem gewährleistet werden, durch das hinzufügen eines eigenen Destruktors.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746245</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Mon, 20 Jul 2009 11:47:24 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 14:24:28 GMT]]></title><description><![CDATA[<blockquote>
<p>Habt ihr schon shared Pointer und Co in größeren Projekten eingesetzt? Gabs Probleme mit anderen Frameworks oder sonstigem oder hat alles gut funktioniert?</p>
</blockquote>
<p>Ja ich habe schon in größeren Projekten Erfahrungen damit gemacht.<br />
Das war übrigens meine erste erwähnenswerte Erfahrung und diese war nicht wirklich erfreulich.</p>
<p>Wir hatten heftigste Probleme mit Zirkeln, so daß Speicher gar nicht freigegeben wurde. Weiterhin kam es dazu dass Objekte im falschen Thread Context freigegeben wurden. Das Programm hing, stürzte ab, hatte Memory leaks, ...</p>
<p>Die erste Funktion die ich verwendet habe war mir den Refence Count anzeigen zu lassen.<br />
Als zweites hatte ich einen ObjectTracer implementiert in den jede kreierte Klasse eingetragen und beim Zertören ausgetragen wurde.<br />
Schließlich hatte ich etliche Member, Funktionen und Methoden von Shared Pointer auf Weak Pointer umgestellt. Erst dann lief das Programm stabil.</p>
<p>Fazit ?<br />
Genau die selben Probleme wie mit normalen Pointer <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /><br />
Und es kommt nach wie vor auf ein vernünftiges Design und den Programmierer an.</p>
<p>Gruß Frank</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746312</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746312</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 20 Jul 2009 14:24:28 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 13:37:11 GMT]]></title><description><![CDATA[<p>DStefan schrieb:</p>
<blockquote>
<p>Dravere schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/11421">@DStefan</a>,<br />
Nur ein Anfänger hat Probleme mit <em>new/delete</em>. Ich persönlich hatte schon lange keine Speicherlecks mehr, keine doppelten delete, die Verantwortung für den Speicher ist immer ganz klar aufgetrennt, nämlich derjenige, welcher den Speicher anfordert, gibt den Speicher auch wieder frei. Ich mag mich nicht an den letzten Absturz wegen eines solchen Fehlers erinnern.</p>
<p>Und ich verwende <code>boost::shared_ptr</code> kaum! Es ist nur eine Frage des Designs des Programmes und der Erfahrung des Programmierers. Wen jemand <code>boost::shared_ptr</code> verwendet, um seine Defizite in Erfahrung und dem Design des Programmes auszugleichen, dann ist dies so ziemlich der falsche Weg.<br />
Grüssli</p>
</blockquote>
<p>Sieh an! Ich hatte immer gedacht, es sei genau anders herum: Erfahrene Programmierer verwenden Smart-Pointer, weil sie genau wissen, was sie daran haben.</p>
</blockquote>
<p>Würde ich nicht so sagen.<br />
Ich verwende <code>boost::shared_ptr</code> nie.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746327</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 20 Jul 2009 13:37:11 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 13:43:25 GMT]]></title><description><![CDATA[<p>skyPilot schrieb:</p>
<blockquote>
<p>Habt ihr schon shared Pointer und Co in größeren Projekten eingesetzt? Gabs Probleme mit anderen Frameworks oder sonstigem oder hat alles gut funktioniert?</p>
</blockquote>
<p>Ich habe mit dem shared_ptr recht gute Erfahrungen gemacht, auch wenn es schon richtig ist, das man diesen nicht überall einsetzen sollte. Ein relativ aktuelles Problem wo ich shared_ptr eingesetzt habe ist eine Stelle bei der nicht genau gesagt werden kann wann die Daten zu löschen sind (Und da wüsste ich jetzt keine sauberere Lösung als shared_ptr). shared_ptr sind gut, aber man sollte immer die Kosten (und Fallstricke) berücksichtigen.</p>
<p>Was ich wiederum recht massiv verwende sind scoped_ptr.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746330</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746330</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Mon, 20 Jul 2009 13:43:25 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 16:23:56 GMT]]></title><description><![CDATA[<p>shared_ptr&lt;&gt; vermeide ich, wann möglich; die externe Referenzzählung ist selten die beste oder sauberste Lösung. Wenn ich schon automatisches Speichermanagement verwende, dann nach Möglichkeit intrinsische Referenzzählung a la COM.</p>
<p>auto_ptr&lt;&gt; allerdings kommt bei mir dauernd vor.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746426</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746426</guid><dc:creator><![CDATA[audacia]]></dc:creator><pubDate>Mon, 20 Jul 2009 16:23:56 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 16:29:19 GMT]]></title><description><![CDATA[<p><code>shared_ptr</code> habe ich sehr selten.<br />
<code>scoped_ptr</code> benutze ich hingegen recht oft, für RAII und Exceptionsicherheit ist er sehr geeignet.<br />
<code>auto_ptr</code> hab ich auch ab und zu, allerdings eher bei Factory-Methoden mit automatischer Freigabe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746433</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Mon, 20 Jul 2009 16:29:19 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 17:17:32 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p><code>shared_ptr</code> habe ich sehr selten.<br />
<code>scoped_ptr</code> benutze ich hingegen recht oft, für RAII und Exceptionsicherheit ist er sehr geeignet.</p>
</blockquote>
<p>Die habe ich bisher beide nicht eingesetzt. Das liegt aber wohl auch der Art der Anwendungen (hauptsächlich &quot;number chrunching&quot;). Bei scoped_ptr vermisse ich irgendwie eine release()-Funktion, mit der ich den Zeiger &quot;befreien&quot; kann, ohne dass das Objekt gelöscht wird. Mit dem kommenden unique_ptr wird auto_ptr und scoped_ptr dann wohl überflüssig.</p>
<p>Nexus schrieb:</p>
<blockquote>
<p><code>auto_ptr</code> hab ich auch ab und zu, allerdings eher bei Factory-Methoden mit automatischer Freigabe.</p>
</blockquote>
<p>Geht mir auch so. Das ist meiner Meinung nach auch eine gute Dokumentationsmöglichkeit über die Besitzverhältnisse im Code selbst. Der Aufrufer weiß dann, dass er selbst für die Verwaltung der Lebenszeit verantwortlich ist.</p>
<p>Gruß,<br />
SP</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746472</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746472</guid><dc:creator><![CDATA[Sebastian Pizer]]></dc:creator><pubDate>Mon, 20 Jul 2009 17:17:32 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 17:39:49 GMT]]></title><description><![CDATA[<p>Sebastian Pizer schrieb:</p>
<blockquote>
<p>Bei scoped_ptr vermisse ich irgendwie eine release()-Funktion, mit der ich den Zeiger &quot;befreien&quot; kann, ohne dass das Objekt gelöscht wird.</p>
</blockquote>
<p>Du kannst dir ja schnell einen eigenen <code>scoped_ptr</code> basteln, das sollte nicht schwer sein (wenn du es wirklich brauchst).</p>
<p>Ich habe mir auch mal einen eigenen Smart Pointer geschrieben, der im Gegensatz zu den üblichen Smart Pointers eine Kopiersemantik besitzt (wird der Zeiger kopiert, so wird das Objekt dahinter kopiert). Habe ich zwar noch nie wirklich produktiv eingesetzt, aber zum Beispiel für das Pimpl-Idiom könnte ich mir eine Anwendung vorstellen (damit die Klasse nicht gleich die grossen Drei implementieren muss). Oder generell, um Header-Abhängigkeiten zu verhindern, da bei Zeigern eine Vorwärtsdeklaration ausreicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746481</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746481</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Mon, 20 Jul 2009 17:39:49 GMT</pubDate></item><item><title><![CDATA[Reply to Eure Erfahrungen mit shared, weak... Pointern on Mon, 20 Jul 2009 18:28:27 GMT]]></title><description><![CDATA[<p>Frank Erdorf schrieb:</p>
<blockquote>
<p>Schließlich hatte ich etliche Member, Funktionen und Methoden von Shared Pointer auf Weak Pointer umgestellt. Erst dann lief das Programm stabil.</p>
<p>Fazit ?<br />
Genau die selben Probleme wie mit normalen Pointer <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /><br />
Und es kommt nach wie vor auf ein vernünftiges Design und den Programmierer an.</p>
<p>Gruß Frank</p>
</blockquote>
<p>Yep, einmal an der falschen Stelle nen shared, statt nem weak Pointer in ner Klasse und schon gabs ein Memleak.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1746494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1746494</guid><dc:creator><![CDATA[mmmmmm]]></dc:creator><pubDate>Mon, 20 Jul 2009 18:28:27 GMT</pubDate></item></channel></rss>