<?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[Heap versus Stack]]></title><description><![CDATA[<p>Hallo,</p>
<p>wieviel schneller ist es ein Object auf dem Stack zu erzeugen als auf dem Heap?<br />
Beim Stack muss ja kein Speicher alloziiert werden...<br />
(Die Unterschiede sind mir klar...)</p>
<p>Hesp</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/131807/heap-versus-stack</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 08:55:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/131807.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 06 Jan 2006 02:27:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 02:27:22 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>wieviel schneller ist es ein Object auf dem Stack zu erzeugen als auf dem Heap?<br />
Beim Stack muss ja kein Speicher alloziiert werden...<br />
(Die Unterschiede sind mir klar...)</p>
<p>Hesp</p>
]]></description><link>https://www.c-plusplus.net/forum/post/958401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/958401</guid><dc:creator><![CDATA[Hesp]]></dc:creator><pubDate>Fri, 06 Jan 2006 02:27:22 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 03:17:39 GMT]]></title><description><![CDATA[<p>mach doch nen benchmark <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>stack: hast du allenernstes vor, den stack zu ueberfluten oder ne tiefe rekursion zu begehen?<br />
heap: willst du den heap mit lauter &quot;new char;&quot; ueberfluten?<br />
(ist bewusst gegensaetzlich gefragt)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/958403</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/958403</guid><dc:creator><![CDATA[c.rackwitz]]></dc:creator><pubDate>Fri, 06 Jan 2006 03:17:39 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 07:11:53 GMT]]></title><description><![CDATA[<p>Hesp schrieb:</p>
<blockquote>
<p>wieviel schneller ist es ein Object auf dem Stack zu erzeugen als auf dem Heap?</p>
</blockquote>
<p>83-mal so schnell.</p>
<p>falls es bei dir 82-mal so schnell oder 84-mal so schnell ist, ist dein rechner kaputt. dann mußt du ihn schnell einpacken und an mich schicken. falls er noch zu retten ist, repariere ich ihn und schicke ihn zurück.</p>
<p>ps: unter umständen könnten unterschiede auch hervorgerufen werden duch unterschiedliche prozessoren, andere cache-größen, unterschiedlich schnelles ram und andere implementierung. ist es ein find-first-allokator mit doppelt verketten listen (lahm aber fast ohne verschwendung), ist es ein buddy-allokator (bis zu 50% verschwendung aber sauschnell), hat er nen small-objekt-allokator davor (der allein bringt mehr als faktor 10 für kleine objekte), haste ne garbage collection dahinter (in c++ unüblich, aber erlaubt, kann speed bringen) oder ne pool-freigabe (bringt definitiv speed). welche threading-policy haste, dann synchronisation ist durchaus das ärgste problem am gesamten speichermanagement.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/958418</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/958418</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 06 Jan 2006 07:11:53 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 12:27:35 GMT]]></title><description><![CDATA[<p>Buh Klugscheissmodus:</p>
<p>Es gibt kein Heap in Standard-C++, es gibt nur Free Store <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/958643</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/958643</guid><dc:creator><![CDATA[FireFlow]]></dc:creator><pubDate>Fri, 06 Jan 2006 12:27:35 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 13:03:20 GMT]]></title><description><![CDATA[<p>FireFlow schrieb:</p>
<blockquote>
<p>Buh Klugscheissmodus:</p>
<p>Es gibt kein Heap in Standard-C++, es gibt nur Free Store <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Gruß</p>
</blockquote>
<p>Standard 25.3.6 : Heap Operations :p</p>
<p>(auch wenn da was anderes gemeint ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /> )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/958692</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/958692</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Fri, 06 Jan 2006 13:03:20 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 13:07:59 GMT]]></title><description><![CDATA[<p>FireFlow schrieb:</p>
<blockquote>
<p>Buh Klugscheissmodus:</p>
<p>Es gibt kein Heap in Standard-C++, es gibt nur Free Store <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Gruß</p>
</blockquote>
<p>Doch gibt auch in Standard-C++ nen Heap, du darfst ja auch in iso-c++ malloc verwenden :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/958698</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/958698</guid><dc:creator><![CDATA[Klugscheiß0r]]></dc:creator><pubDate>Fri, 06 Jan 2006 13:07:59 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 20:24:43 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>falls er noch zu retten ist, repariere ich ihn und schicke ihn zurück.</p>
</blockquote>
<p>Hehe, erzähl mal noch einen. Du würdest den Rechner doch nie zurückschicken und behaupten, er sei schrottreif. :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/959120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/959120</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Fri, 06 Jan 2006 20:24:43 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 20:54:55 GMT]]></title><description><![CDATA[<p>Hesp schrieb:</p>
<blockquote>
<p>Beim Stack muss ja kein Speicher alloziiert werden...</p>
</blockquote>
<p>Nein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/959144</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/959144</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Fri, 06 Jan 2006 20:54:55 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Fri, 06 Jan 2006 23:15:03 GMT]]></title><description><![CDATA[<p>joomoo schrieb:</p>
<blockquote>
<p>Hesp schrieb:</p>
<blockquote>
<p>Beim Stack muss ja kein Speicher alloziiert werden...</p>
</blockquote>
<p>Nein?</p>
</blockquote>
<p>Nein! Zumindest nicht in dem Sinne wie bei einem Heap. Bei einer Stack-Allokation wird lediglich der Stack-Pointer um einen festern Wert verschoben (durch eine simple Addition). Im Gegensatz zu einer Heap-Allokation ist eine Stack-Allokation immer eine constant-time-operation.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/959222</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/959222</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Fri, 06 Jan 2006 23:15:03 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Sat, 07 Jan 2006 00:52:06 GMT]]></title><description><![CDATA[<p>Eine Heap-Allokation kann doch je nach Implementierung auch in (amortisiert) konstanter Zeit geschehen. Bei &quot;gescheiten&quot; GC-Heaps ist das sogar der Regelfall, dass auch nur ein Pointer dafür erhöht wird.<br />
In jedem Fall sehe ich den Punkt, warum das Allokieren auf dem Stack nicht so heißen darf, nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/959262</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/959262</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 07 Jan 2006 00:52:06 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Sat, 07 Jan 2006 05:24:50 GMT]]></title><description><![CDATA[<p>groovemaster schrieb:</p>
<blockquote>
<p>volkard schrieb:</p>
<blockquote>
<p>falls er noch zu retten ist, repariere ich ihn und schicke ihn zurück.</p>
</blockquote>
<p>Hehe, erzähl mal noch einen. Du würdest den Rechner doch nie zurückschicken und behaupten, er sei schrottreif. :p</p>
</blockquote>
<p>T_T du hast im die pointe seines witzes versaut <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/959347</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/959347</guid><dc:creator><![CDATA[[[global:former_user]]]]></dc:creator><pubDate>Sat, 07 Jan 2006 05:24:50 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Sun, 19 Mar 2006 17:37:03 GMT]]></title><description><![CDATA[<p>wär denn mal ne ernste antwort möglich, oder gibs keine <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="😕"
    /> <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="😕"
    /> <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="😕"
    /><br />
gibts da tuningmöglichkeiten zb bei simulationen (populationszyklen, klimamodelle..)? mehr speed wär schon noch interessant<br />
ich kenn nur trading policy<br />
und pool freigabe ab dem ersten heissen frühlingstag <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1019817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1019817</guid><dc:creator><![CDATA[do_not_stack]]></dc:creator><pubDate>Sun, 19 Mar 2006 17:37:03 GMT</pubDate></item><item><title><![CDATA[Reply to Heap versus Stack on Sun, 19 Mar 2006 18:41:54 GMT]]></title><description><![CDATA[<p>und bitte nicht gleich heaperventilieren..<br />
aber wenn ich ne ganze menge objekte verschiedener klassen dynamisch erzeug, alle paar zyklen wieder n paar lösch, und der zyklus so etwa 100ms oder weniger dauert, komm ich irgendwann an grenzen mit der effizienz oder?<br />
bin mir über den zu verwendenden container/objektmanager auch noch nicht ganz sicher.. ??<br />
folgendes:</p>
<pre><code class="language-cpp">list&lt;list&lt;earth_object*&gt;*&gt; *master_list;
list&lt;earth_object*&gt; *nutrient_list;
nutrient* Sugar;   // nutrient erbt von earth_object
...
master_list-&gt;add( nutrient_list = new list&lt;earth_object*&gt;() );
nutrient_list-&gt;add( NutSugar = new nutrient( &quot;Sugar&quot;, clRed, 0, 1 ) );
...
nutrient_list-&gt;paint( paint_area_1 );
</code></pre>
<p>ist doch nicht wirklich schön oder?<br />
(projekt noch im entwurf, daher noch nicht viel source)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1019866</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1019866</guid><dc:creator><![CDATA[do_not_double_stack]]></dc:creator><pubDate>Sun, 19 Mar 2006 18:41:54 GMT</pubDate></item></channel></rss>