<?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[Speicher freigeben]]></title><description><![CDATA[<p>Hallo an alle,<br />
ich habe in der Klasse von einer TForm zusätzliche Zeiger deklariert, für diese allociere ich dann in mehreren Funktionen mit &quot;new&quot; Speicher.<br />
Jetzt habe ich irgendwann mal gelernt, daß ich diesen Speicher spätestens im Destruktor wieder freigeben sollte. Meines Wissens existieren Forms jedoch während der kompletten Laufzeit des Programmes und dementsprechend sollte der Speicher ja nach Programmende wieder automatisch freigegeben werden. Ob das &quot;schön&quot; ist???<br />
Meine Frage ist jetzt, muß ich denn Speicher wieder explizit freigeben und wenn ja, wie und wo mache ich das am besten?</p>
<p>Gruß Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/109873/speicher-freigeben</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Jul 2026 09:33:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/109873.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 14 May 2005 22:37:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Speicher freigeben on Sat, 14 May 2005 22:38:33 GMT]]></title><description><![CDATA[<p>Hallo an alle,<br />
ich habe in der Klasse von einer TForm zusätzliche Zeiger deklariert, für diese allociere ich dann in mehreren Funktionen mit &quot;new&quot; Speicher.<br />
Jetzt habe ich irgendwann mal gelernt, daß ich diesen Speicher spätestens im Destruktor wieder freigeben sollte. Meines Wissens existieren Forms jedoch während der kompletten Laufzeit des Programmes und dementsprechend sollte der Speicher ja nach Programmende wieder automatisch freigegeben werden. Ob das &quot;schön&quot; ist???<br />
Meine Frage ist jetzt, muß ich denn Speicher wieder explizit freigeben und wenn ja, wie und wo mache ich das am besten?</p>
<p>Gruß Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/788747</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/788747</guid><dc:creator><![CDATA[Alex_H]]></dc:creator><pubDate>Sat, 14 May 2005 22:38:33 GMT</pubDate></item><item><title><![CDATA[Reply to Speicher freigeben on Sun, 15 May 2005 08:00:44 GMT]]></title><description><![CDATA[<p>Das mit der Freigabe ist so eine Sache: Wenn dein Programm beendet wurde ist es ja nicht mehr im Speicher, deine Pointer also auch nicht; Nur während der Laufzeit könnte es dann einen leichten Overhead geben (aber wirkliche Geschwindigkeitsprobleme solltest du wohl erst ab wesentlich mehr Pointern erwarten).</p>
<p>Gib die Pointer einfach, wenn du sie nicht mehr brauchst, mit delete oder delete[] wieder frei; dann bist du zumindest auf der sicheren Seite <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/788812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/788812</guid><dc:creator><![CDATA[Reyx]]></dc:creator><pubDate>Sun, 15 May 2005 08:00:44 GMT</pubDate></item><item><title><![CDATA[Reply to Speicher freigeben on Sun, 15 May 2005 08:54:07 GMT]]></title><description><![CDATA[<p>Hallo</p>
<blockquote>
<p>Meines Wissens existieren Forms jedoch während der kompletten Laufzeit des Programmes</p>
</blockquote>
<p>Nur im Normalfall. Denn es ist in etwas komplexeren Programmen üblich, TForm-Instanzen dynmisch und manuell zu erstellen und wieder zu löschen, bevor das eigentliche Programm beendet wird.<br />
Es ist definitiv besser, wenn du dir angewöhnst, eigene Instanzen immer korrekt zu löschen. Auch von TForm kannst du einen Destruktor (muß __fastcall sein) erstellen und so aufräumen.<br />
Um dir diese Aufgabe abzunehmen, kannst du übrigens std::auto_ptr&lt;&gt; nehmen.<br />
Damit wird das Löschen der Instanz automatisiert. Siehe<br />
<a href="http://www.cppreference.com/cppmisc/auto_ptr.html" rel="nofollow">http://www.cppreference.com/cppmisc/auto_ptr.html</a></p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/788834</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/788834</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sun, 15 May 2005 08:54:07 GMT</pubDate></item><item><title><![CDATA[Reply to Speicher freigeben on Sun, 15 May 2005 13:13:39 GMT]]></title><description><![CDATA[<p>Danke für eure Antworten,<br />
ich werde in zukünftigen Projekten, darauf achten ob ich Forms wieder freigeben kann. Im jetzigen Fall entscheide ich mich dafür, dies dem Automatismus zu überlassen, da ich die Werte in den Zeigern in anderen Klassen ebenfalls benötige.</p>
<p>Gruß Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/788992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/788992</guid><dc:creator><![CDATA[Alex_H]]></dc:creator><pubDate>Sun, 15 May 2005 13:13:39 GMT</pubDate></item></channel></rss>