<?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 für main]]></title><description><![CDATA[<p>gibt es einen destruktor für main()??</p>
<p>oder muss ich mir selber eine art &quot;clean-up&quot; funktion um speicher wieder freizugeben, etc.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/125888/destruktor-für-main</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 13:52:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/125888.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 10 Nov 2005 09:34:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Destruktor für main on Thu, 10 Nov 2005 09:34:59 GMT]]></title><description><![CDATA[<p>gibt es einen destruktor für main()??</p>
<p>oder muss ich mir selber eine art &quot;clean-up&quot; funktion um speicher wieder freizugeben, etc.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/913668</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/913668</guid><dc:creator><![CDATA[asr]]></dc:creator><pubDate>Thu, 10 Nov 2005 09:34:59 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor für main on Thu, 10 Nov 2005 09:39:49 GMT]]></title><description><![CDATA[<p>Da main nur ne Funktion ist, und keine Klasse, hat's auch keinen Dtor. Und ja, räum deinen Müll selber wieder auf.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/913670</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/913670</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Thu, 10 Nov 2005 09:39:49 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor für main on Thu, 10 Nov 2005 10:09:15 GMT]]></title><description><![CDATA[<p>sah nur so aus als würde er nicht alles aufräumen.<br />
weil er die sachen aus main(). erst nach der geschweiften klammer nach dem return freigibt.</p>
<pre><code class="language-cpp">int _tmain(int argc, _TCHAR* argv[])
{

	DoMainStuff();

	_CrtDumpMemoryLeaks();

	return 0;
}
</code></pre>
<p>hab nun also die anweisungen in eine funktion DoMainStuff gepackt.<br />
dann werden mir die noch nicht aufgeräumten sachen nicht mehr als leaks angezeigt <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/913696</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/913696</guid><dc:creator><![CDATA[asr]]></dc:creator><pubDate>Thu, 10 Nov 2005 10:09:15 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor für main on Thu, 10 Nov 2005 10:13:03 GMT]]></title><description><![CDATA[<p>asr schrieb:</p>
<blockquote>
<p>weil er die sachen aus main(). erst nach der geschweiften klammer nach dem return freigibt.</p>
</blockquote>
<p>Yo, dann werden die belegten Ressourcen vom OS freigegeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/913702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/913702</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Thu, 10 Nov 2005 10:13:03 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor für main on Thu, 10 Nov 2005 12:26:01 GMT]]></title><description><![CDATA[<p>asr schrieb:</p>
<blockquote>
<p>sah nur so aus als würde er nicht alles aufräumen.<br />
weil er die sachen aus main(). erst nach der geschweiften klammer nach dem return freigibt.</p>
</blockquote>
<p>Ist ja auch richtig so, da sie erst dort ihre Gültigkeit verlieren. Mit dem Ende von main() ist das Programm übrigens nicht sofort zuende. Die C-Bibliothek macht dann noch verschiedenste Aufräumarbeiten, es werden Destruktoren von statischen Objekten gerufen etc.. Genauso ist main() auch nicht der direkte Einsprungpunkt deiner Anwendung, sondern wird von der C-Bibliothek aus aufgerufen, nachdem sich diese initialisiert hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/913818</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/913818</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Thu, 10 Nov 2005 12:26:01 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor für main on Thu, 10 Nov 2005 13:03:10 GMT]]></title><description><![CDATA[<p>Um Missverständnissen vorzubeugen:</p>
<p>Objekte und Variablen, die als auto-Storage nach der { von main deklariert wurden, werden natürlich erst beim } von main auch wieder zerstört. Alles was allerdings dynamisch angefordert wurde, wird keineswegs am Ende von main zerstört, sondern kurz danach durch das Betriebssystem. Da das natürlich fürchterlich unsauber ist, müssen wir selbstverständlich VOR dem Ende von main schon selbst aufgeräumt haben!</p>
<p>(Gilt natürlich für jeden dynamisch angeforderten Speicher im gesamten Verlauf des Programms, wobei am ehesten gilt: Aufräumen sobald der Müll nicht mehr gebraucht wird)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/913866</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/913866</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 10 Nov 2005 13:03:10 GMT</pubDate></item><item><title><![CDATA[Reply to Destruktor für main on Thu, 10 Nov 2005 23:10:29 GMT]]></title><description><![CDATA[<p>LordJaxom schrieb:</p>
<blockquote>
<p>Alles was allerdings dynamisch angefordert wurde, wird keineswegs am Ende von main zerstört, sondern kurz danach durch das Betriebssystem.</p>
</blockquote>
<p>Das kann, muss aber nicht so sein. Der Standard legt dies zumindest nicht fest. Deshalb</p>
<p>LordJaxom schrieb:</p>
<blockquote>
<p>Da das natürlich fürchterlich unsauber ist, müssen wir selbstverständlich VOR dem Ende von main schon selbst aufgeräumt haben!</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/914508</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/914508</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Thu, 10 Nov 2005 23:10:29 GMT</pubDate></item></channel></rss>