<?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[Destruktor wird nicht aufgerufen]]></title><description><![CDATA[<p>Hallo,</p>
<p>kann mir einer erklären, wieso hier der Destruktor nicht automatisch aufgerufen wird?</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

class Beispiel {
public:
	int nr;
	Beispiel(int nummer) {
		nr = nummer;
		cout &lt;&lt; &quot;Pos. A, &quot;;
		cout &lt;&lt; &quot;Nr.: &quot; &lt;&lt; nr &lt;&lt; endl;
	}
	~Beispiel() { //Destruktor
		cout &lt;&lt; &quot;Pos. B, &quot;;
		cout &lt;&lt; &quot;Nr.: &quot; &lt;&lt; nr &lt;&lt; endl;
	}
};

int main() {
	cout &lt;&lt; &quot;Pos. D&quot; &lt;&lt; endl;
	Beispiel * bp = new Beispiel(5);
	cout &lt;&lt; &quot;Pos. E&quot; &lt;&lt; endl;
	//bp-&gt;~Beispiel();
}
</code></pre>
<p>Muss ich dann den wie unten auskommentiert selbst aufrufen?</p>
<p>Danke schon mal.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/323300/destruktor-wird-nicht-aufgerufen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 06:52:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/323300.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 25 Jan 2014 05:28:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Destruktor wird nicht aufgerufen on Sat, 25 Jan 2014 05:28:42 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>kann mir einer erklären, wieso hier der Destruktor nicht automatisch aufgerufen wird?</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

class Beispiel {
public:
	int nr;
	Beispiel(int nummer) {
		nr = nummer;
		cout &lt;&lt; &quot;Pos. A, &quot;;
		cout &lt;&lt; &quot;Nr.: &quot; &lt;&lt; nr &lt;&lt; endl;
	}
	~Beispiel() { //Destruktor
		cout &lt;&lt; &quot;Pos. B, &quot;;
		cout &lt;&lt; &quot;Nr.: &quot; &lt;&lt; nr &lt;&lt; endl;
	}
};

int main() {
	cout &lt;&lt; &quot;Pos. D&quot; &lt;&lt; endl;
	Beispiel * bp = new Beispiel(5);
	cout &lt;&lt; &quot;Pos. E&quot; &lt;&lt; endl;
	//bp-&gt;~Beispiel();
}
</code></pre>
<p>Muss ich dann den wie unten auskommentiert selbst aufrufen?</p>
<p>Danke schon mal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2379433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2379433</guid><dc:creator><![CDATA[markus80]]></dc:creator><pubDate>Sat, 25 Jan 2014 05:28:42 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor wird nicht aufgerufen on Sat, 25 Jan 2014 05:47:40 GMT]]></title><description><![CDATA[<p>Du hast das Objekt mit new erzeugt und musst es mit delete wieder freigeben.</p>
<pre><code>delete bp;
</code></pre>
<p>- osdt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2379434</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2379434</guid><dc:creator><![CDATA[osdt]]></dc:creator><pubDate>Sat, 25 Jan 2014 05:47:40 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor wird nicht aufgerufen on Sat, 25 Jan 2014 05:52:02 GMT]]></title><description><![CDATA[<p>Danke, das bringt mich auf Heap und Stack <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="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2379436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2379436</guid><dc:creator><![CDATA[markus80]]></dc:creator><pubDate>Sat, 25 Jan 2014 05:52:02 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor wird nicht aufgerufen on Sat, 25 Jan 2014 12:03:46 GMT]]></title><description><![CDATA[<p>markus80 schrieb:</p>
<blockquote>
<p>Danke, das bringt mich auf Heap und Stack <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="😃"
    /></p>
</blockquote>
<p>Und wie du siehst, wird der Destruktor automatisch aufgerufen, wenn du</p>
<pre><code>Beispiel b(5);
</code></pre>
<p>geschrieben hättest. Nicht nur deswegen sollte dies die bevorzugte Art sein, seine Objekte zu halten. Diese automatischen Destruktoren werden richtig mächtig, wenn man denn doch mal new braucht, da man dann im Konstruktor eines Objekts das new machen kann und wenn man im Destruktor das zugehörige delete hat, dann wird dies ganz automatisch aufgerufen! so machen das die ganzen Container der Standardbibliothek (vector &amp; Co.) und du solltest es auch machen (sofern dir die Standardbibliothek nicht reicht). Stichworte: RAII, Smartpointer, Dreierregel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2379462</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2379462</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 25 Jan 2014 12:03:46 GMT</pubDate></item></channel></rss>