<?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[auch den Destruktor der Basisklasse aufrufen]]></title><description><![CDATA[<p>wie kann ich, wenn ich eine Klasse über einen Verweis der Oberklasse lösche, sichergehen, dass auch der Destrukot der Basisklasse aufgerufen wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/309509/auch-den-destruktor-der-basisklasse-aufrufen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 05 Aug 2026 06:30:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/309509.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 24 Oct 2012 15:30:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:30:40 GMT]]></title><description><![CDATA[<p>wie kann ich, wenn ich eine Klasse über einen Verweis der Oberklasse lösche, sichergehen, dass auch der Destrukot der Basisklasse aufgerufen wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263617</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263617</guid><dc:creator><![CDATA[alterbro]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:30:40 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:34:29 GMT]]></title><description><![CDATA[<p>alterbro schrieb:</p>
<blockquote>
<p>wie kann ich, wenn ich eine Klasse über einen Verweis der Oberklasse lösche, sichergehen, dass auch der Destrukot der Basisklasse aufgerufen wird?</p>
</blockquote>
<p>Mach alle Destruktoren der Vererbungshierarchie <code>virtual</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263619</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:34:29 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:38:33 GMT]]></title><description><![CDATA[<p>Im Übrigen bin ich geschockt, dass du nach 500 Beiträgen noch nicht den Unterschied zwischen einer Klasse und einem Objekt kennst. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2263620</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263620</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:38:33 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:38:49 GMT]]></title><description><![CDATA[<p>Was? Der Destruktor der Basisklasse wird immer ausgeführt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263621</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263621</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:38:49 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:39:41 GMT]]></title><description><![CDATA[<p>okay, also wenn ich sie auf virtual setzte, werden dann alle Destruktoren ausgeführt, egal welchen typ der Verweis hat, oder nur der des jeweils letzten typs?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263622</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263622</guid><dc:creator><![CDATA[alterbro]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:39:41 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:39:53 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>Was? Der Destruktor der Basisklasse wird immer ausgeführt.</p>
</blockquote>
<p>Da er von Verweisen redet, gehe ich davon aus, dass es um Polymorphie geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263623</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263623</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:39:53 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:41:18 GMT]]></title><description><![CDATA[<p>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263624</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263624</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:41:18 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:41:02 GMT]]></title><description><![CDATA[<p>alterbro schrieb:</p>
<blockquote>
<p>okay, also wenn ich sie auf virtual setzte, werden dann alle Destruktoren ausgeführt, egal welchen typ der Verweis hat, oder nur der des jeweils letzten typs?</p>
</blockquote>
<p>Richtig, dann werden alle Destruktoren schön aufgerufen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263625</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263625</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:41:02 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:41:44 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<p>alterbro schrieb:</p>
<blockquote>
<p>okay, also wenn ich sie auf virtual setzte, werden dann alle Destruktoren ausgeführt, egal welchen typ der Verweis hat, oder nur der des jeweils letzten typs?</p>
</blockquote>
<p>Richtig, dann werden alle Destruktoren schön aufgerufen.</p>
</blockquote>
<p>Dafür müssen doch nicht <strong>alle</strong> virtuell gemacht werden!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263627</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263627</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:41:44 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:43:30 GMT]]></title><description><![CDATA[<p>Danke, hast mir sehr geholfen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263628</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263628</guid><dc:creator><![CDATA[alterbro]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:43:30 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:43:43 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<p>Michael E. schrieb:</p>
<blockquote>
<p>Was? Der Destruktor der Basisklasse wird immer ausgeführt.</p>
</blockquote>
<p>Da er von Verweisen redet, gehe ich davon aus, dass es um Polymorphie geht.</p>
</blockquote>
<p>Auch dann wird der Basisklassendestruktor immer ausgeführt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263629</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263629</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:43:43 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:44:01 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>out schrieb:</p>
<blockquote>
<p>alterbro schrieb:</p>
<blockquote>
<p>okay, also wenn ich sie auf virtual setzte, werden dann alle Destruktoren ausgeführt, egal welchen typ der Verweis hat, oder nur der des jeweils letzten typs?</p>
</blockquote>
<p>Richtig, dann werden alle Destruktoren schön aufgerufen.</p>
</blockquote>
<p>Dafür müssen doch nicht <strong>alle</strong> virtuell gemacht werden!</p>
</blockquote>
<p>Der Konsistenz wegen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263630</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263630</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:44:01 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 15:50:22 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>out schrieb:</p>
<blockquote>
<p>Michael E. schrieb:</p>
<blockquote>
<p>Was? Der Destruktor der Basisklasse wird immer ausgeführt.</p>
</blockquote>
<p>Da er von Verweisen redet, gehe ich davon aus, dass es um Polymorphie geht.</p>
</blockquote>
<p>Auch dann wird der Basisklassendestruktor immer ausgeführt.</p>
</blockquote>
<p>Reden wir aneinander vorbei? Ich verstehe es so, dass er sowas vorhat:</p>
<pre><code class="language-cpp">class foo
{
public:
	~foo() { cout &lt;&lt; endl &lt;&lt; &quot;foo&quot;; }
};

class bar : public foo
{
public:
	~bar() { cout &lt;&lt; endl &lt;&lt; &quot;bar&quot;; }
};

int main()
{
	{
		std::unique_ptr&lt;foo&gt; p1(new bar);
	}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2263634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263634</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 24 Oct 2012 15:50:22 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 16:02:01 GMT]]></title><description><![CDATA[<p>Bei deinem Code wird <code>foo</code> ausgegeben, d.h. der Basisklassendestruktor wird ausgeführt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263635</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263635</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 24 Oct 2012 16:02:01 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 16:08:59 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>Bei deinem Code wird <code>foo</code> ausgegeben, d.h. der Basisklassendestruktor wird ausgeführt.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> Jetzt hab ich mich lumpen lassen. Natürlich muss man sicherstellen, dass die Destruktoren der Unterklassen aufgerufen werden. :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263638</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263638</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 24 Oct 2012 16:08:59 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 16:21:07 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>out schrieb:</p>
<blockquote>
<p>alterbro schrieb:</p>
<blockquote>
<p>okay, also wenn ich sie auf virtual setzte, werden dann alle Destruktoren ausgeführt, egal welchen typ der Verweis hat, oder nur der des jeweils letzten typs?</p>
</blockquote>
<p>Richtig, dann werden alle Destruktoren schön aufgerufen.</p>
</blockquote>
<p>Dafür müssen doch nicht <strong>alle</strong> virtuell gemacht werden!</p>
</blockquote>
<p>Man kann nicht den Basisklassendestruktor virtuell machen, die der abgeleiteten aber nicht virtuell; diese sind dann auf jeden Fall virtuell.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263653</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263653</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Wed, 24 Oct 2012 16:21:07 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 16:34:04 GMT]]></title><description><![CDATA[<p>Belli schrieb:</p>
<blockquote>
<p>Sone schrieb:</p>
<blockquote>
<p>out schrieb:</p>
<blockquote>
<p>alterbro schrieb:</p>
<blockquote>
<p>okay, also wenn ich sie auf virtual setzte, werden dann alle Destruktoren ausgeführt, egal welchen typ der Verweis hat, oder nur der des jeweils letzten typs?</p>
</blockquote>
<p>Richtig, dann werden alle Destruktoren schön aufgerufen.</p>
</blockquote>
<p>Dafür müssen doch nicht <strong>alle</strong> virtuell gemacht werden!</p>
</blockquote>
<p>Man kann nicht den Basisklassendestruktor virtuell machen, die der abgeleiteten aber nicht virtuell; diese sind dann auf jeden Fall virtuell.</p>
</blockquote>
<p>Nein. Ich meinte man muss sie nicht markieren. Und was du gesagt hast, hat meine Aussage doch nur bestätigt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263659</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263659</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 24 Oct 2012 16:34:04 GMT</pubDate></item><item><title><![CDATA[Reply to auch den Destruktor der Basisklasse aufrufen on Wed, 24 Oct 2012 19:45:25 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>was du gesagt hast, hat meine Aussage doch nur bestätigt.</p>
</blockquote>
<p>Nein, ich habe gesagt, Du machst entweder alle virtuell (zwangsweise), oder keinen, Du hast gesagt, man muss nicht alle virtuell machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2263732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2263732</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Wed, 24 Oct 2012 19:45:25 GMT</pubDate></item></channel></rss>