<?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[Frage zu Pointer mit new]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab grad folgenden Code vor mir:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &quot;Klasse.h&quot;
#include &quot;Klasse2.h&quot;

using namespace std;

int main(int argc, char* argv[])
{

        Klasse *x = new Klasse;
        cout &lt;&lt; x &lt;&lt; endl;
        x-&gt;Methode();
        delete x;

        Klasse *y;
        cout &lt;&lt; y &lt;&lt; endl;
        y-&gt;Methode();

    return 0;
}
</code></pre>
<p>Ok, also bei der ersten Klasse lege ich das objekt mit new an, beim zweiten ohne. Beim ersten muss man zusätzlich noch ein Delete machen ansonsten habe ich ein speicherloch -&gt; auch klar! <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>
<p>Aber was ist bitte der Unterschied zwischen den beiden Arten ein Objekt anzulegen? was soll das new zusätzlich noch bringen? Beim zweiten habe ich kein speicherloch, habe ich überprüft!</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/277053/frage-zu-pointer-mit-new</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 01:51:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/277053.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 12 Nov 2010 10:46:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Frage zu Pointer mit new on Fri, 12 Nov 2010 10:46:48 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab grad folgenden Code vor mir:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &quot;Klasse.h&quot;
#include &quot;Klasse2.h&quot;

using namespace std;

int main(int argc, char* argv[])
{

        Klasse *x = new Klasse;
        cout &lt;&lt; x &lt;&lt; endl;
        x-&gt;Methode();
        delete x;

        Klasse *y;
        cout &lt;&lt; y &lt;&lt; endl;
        y-&gt;Methode();

    return 0;
}
</code></pre>
<p>Ok, also bei der ersten Klasse lege ich das objekt mit new an, beim zweiten ohne. Beim ersten muss man zusätzlich noch ein Delete machen ansonsten habe ich ein speicherloch -&gt; auch klar! <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>
<p>Aber was ist bitte der Unterschied zwischen den beiden Arten ein Objekt anzulegen? was soll das new zusätzlich noch bringen? Beim zweiten habe ich kein speicherloch, habe ich überprüft!</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1979368</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1979368</guid><dc:creator><![CDATA[buzz_lightzyear]]></dc:creator><pubDate>Fri, 12 Nov 2010 10:46:48 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu Pointer mit new on Fri, 12 Nov 2010 10:47:44 GMT]]></title><description><![CDATA[<p>buzz_lightzyear schrieb:</p>
<blockquote>
<p>Beim zweiten habe ich kein speicherloch, habe ich überprüft!</p>
</blockquote>
<p>Beim zweiten hast du gar kein Objekt, nur einen uninitialisierten Zeiger.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1979371</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1979371</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 12 Nov 2010 10:47:44 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu Pointer mit new on Fri, 12 Nov 2010 10:53:48 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">Klasse kla;
Klasse *y = &amp;kla;
</code></pre>
<p>Der Unterschied ist, dass du mit new Speicher auf dem Heap reservierst und diesen überall verweden kannst. in der zweiten Variante legst du das Objekt auf dem Stack an. Wird der Scope verlassen, so wird das Objekt auch zerstört. Dies ist bei new nicht der Fall, denn dort musst du mittels delete sagen, wann du es nichtmehr brauchst und freigeben willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1979372</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1979372</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Fri, 12 Nov 2010 10:53:48 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu Pointer mit new on Fri, 12 Nov 2010 11:04:41 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &quot;Klasse.h&quot;
#include &quot;Klasse2.h&quot;

using namespace std;

int main(int argc, char* argv[])
{

        Klasse *x = new Klasse;
        cout &lt;&lt; x &lt;&lt; endl;
        x-&gt;Methode();
        delete x;

        Klasse y;
        cout &lt;&lt; y &lt;&lt; endl;
        y.Methode();

    return 0;
}
</code></pre>
<p>Unterschiede:</p>
<p>- bei 1) legst du dein Objekt auf dem <em>Heap</em> an (dynamische Speicherplatzanforderung), und bei 2) auf dem <em>Stack</em>.</p>
<p>- bei 1) musst du bestimmten, wann der Speicher wieder freigegeben wird, bei 2) ist es an den Gültigkeitsbereich der Variable gekoppelt.</p>
<p>- Du verwendest 1) wenn du eine <strong>große</strong> Menge an Speicherplatz benötigst, da der <em>Stack</em> nicht so groß ist und irgendwann erschöpft ist.</p>
<p>- Falls du aber mal viel Speicherplatz benötigst, solltest du nicht <em>new</em> verwenden, sondern sog. <em>Container</em>.</p>
<p>mfg dweb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1979378</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1979378</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Fri, 12 Nov 2010 11:04:41 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu Pointer mit new on Fri, 12 Nov 2010 13:01:13 GMT]]></title><description><![CDATA[<p>danke für eure ausführlichen Antworten!</p>
<p>lg<br />
buzz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1979431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1979431</guid><dc:creator><![CDATA[buzz_lightzyear]]></dc:creator><pubDate>Fri, 12 Nov 2010 13:01:13 GMT</pubDate></item></channel></rss>