<?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[Q: Pointer Basics]]></title><description><![CDATA[<pre><code class="language-cpp">Classo* Klasse = new Classo;
Classo* Super = Klasse;
</code></pre>
<p>Wenn ich was an Super änder, änder ich dann auch &quot;Klasse&quot; ?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/274140/q-pointer-basics</link><generator>RSS for Node</generator><lastBuildDate>Thu, 27 Aug 2026 19:04:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/274140.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 20 Sep 2010 17:23:25 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 17:23:25 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">Classo* Klasse = new Classo;
Classo* Super = Klasse;
</code></pre>
<p>Wenn ich was an Super änder, änder ich dann auch &quot;Klasse&quot; ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954911</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954911</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Mon, 20 Sep 2010 17:23:25 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 17:32:53 GMT]]></title><description><![CDATA[<p>Tim06TR schrieb:</p>
<blockquote>
<pre><code class="language-cpp">Classo* Klasse = new Classo;
Classo* Super = Klasse;
</code></pre>
<p>Wenn ich was an Super änder, änder ich dann auch &quot;Klasse&quot; ?</p>
</blockquote>
<p>Um haarspalterisch zu sein, nein. Wenn Du</p>
<pre><code class="language-cpp">Super=0;
</code></pre>
<p>oder</p>
<pre><code class="language-cpp">++Super;
</code></pre>
<p>schreibst, hast Du nur super geändert.</p>
<p>Aber</p>
<pre><code class="language-cpp">(*Super).attrib=5;
</code></pre>
<p>bzw</p>
<pre><code class="language-cpp">Super-&gt;attrib=5;
</code></pre>
<p>ändert sowohl an *Super als auch an *Klasse, denn beide Zeiger zeigen auf ein und das selbe Objekt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954915</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954915</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 20 Sep 2010 17:32:53 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 17:31:02 GMT]]></title><description><![CDATA[<p>Pointer basics:<br />
<a href="http://www.youtube.com/watch?v=mnXkiAKbUPg" rel="nofollow">http://www.youtube.com/watch?v=mnXkiAKbUPg</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954916</guid><dc:creator><![CDATA[PhilippM]]></dc:creator><pubDate>Mon, 20 Sep 2010 17:31:02 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 17:33:56 GMT]]></title><description><![CDATA[<p>Beide Pointer verweisen auf das selbe Objekt auf dem Heap.<br />
das heißt wenn du du über den Pointer das Objekt änderst,<br />
hast du die Auswirkungen bei beiden Pointern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954917</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954917</guid><dc:creator><![CDATA[cocacola88]]></dc:creator><pubDate>Mon, 20 Sep 2010 17:33:56 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 17:37:19 GMT]]></title><description><![CDATA[<p>Und wie kopier ich die Klasse auf den &quot;Klasse&quot; zeigt und weise diese Kopie &quot;Super&quot; zu. (-&gt;elegant)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954920</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954920</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Mon, 20 Sep 2010 17:37:19 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 18:24:29 GMT]]></title><description><![CDATA[<p>Tim06TR schrieb:</p>
<blockquote>
<p>Und wie kopier ich die Klasse auf den &quot;Klasse&quot; zeigt und weise diese Kopie &quot;Super&quot; zu. (-&gt;elegant)</p>
</blockquote>
<pre><code class="language-cpp">Classo Super = *Klasse;
</code></pre>
<p>oder wenn Du auch unbedingt new verwenden willst.</p>
<p>edit:</p>
<pre><code class="language-cpp">Classo* Super = new Classo(Klasse);//dies war falsch
</code></pre>
<pre><code class="language-cpp">Classo* Super = new Classo(*Klasse);//so richtig
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1954926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954926</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 20 Sep 2010 18:24:29 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 17:49:38 GMT]]></title><description><![CDATA[<p>So jetzt warum ich diese Banale Frage gestellt habe (mit dieser Postanzahl ;))</p>
<p>Das Problem war eben das kopieren, und ich wusste, dass ich nicht einfach die Addresse übergeben darf.<br />
Mir ist dann auch aufgefallen, wenn ich Clear aufrufe, cleared das beides (unschön).</p>
<p>Deshalb hab ich nachgehakt. Sonst hätt ich nur rumgewurschtelt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954929</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954929</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Mon, 20 Sep 2010 17:49:38 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 17:56:23 GMT]]></title><description><![CDATA[<p>Und noch eine Frage zu dieser Meldung:</p>
<blockquote>
<p>&quot;Klassen mit Eigenschaften dürfen nicht über ihren Wert kopiert werden&quot;</p>
</blockquote>
<p>heißt ?<br />
besonders: &quot;über ihren Wert&quot; Was ist der &quot;Wert&quot; einer Klasse (hier Array)</p>
<pre><code class="language-cpp">KLASSE Words_Buffer[3];

Words_Buffer[0] = *Words[0];
</code></pre>
<p>wie kopier ich den gesamten array, bzw was ist hier noch falsch.<br />
(zu Words)</p>
<pre><code class="language-cpp">KLASSE* Words[3];
for (i = 0; i &lt; 3; i++)
Words[3] = new KLASSE;
</code></pre>
<p>und der new konstruktor funzt auch für Arrays (new[])</p>
<p>[url]<a href="http://www.cplusplus.com/reference/std/new/operator" rel="nofollow">http://www.cplusplus.com/reference/std/new/operator</a> new[]/[/url]<br />
so gefunden, aber wenn ich das unmsetze mach ich watt falsch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954934</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954934</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Mon, 20 Sep 2010 17:56:23 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 18:03:01 GMT]]></title><description><![CDATA[<p>PhilippM schrieb:</p>
<blockquote>
<p>Pointer basics:<br />
<a href="http://www.youtube.com/watch?v=mnXkiAKbUPg" rel="nofollow">http://www.youtube.com/watch?v=mnXkiAKbUPg</a></p>
</blockquote>
<p>Das gibt's aber auch nochmal in der C++ Edition mit <code>new int</code> statt <code>malloc(sizeof(int))</code> :<br />
<a href="http://www.youtube.com/watch?v=i49_SNt4yfk" rel="nofollow">http://www.youtube.com/watch?v=i49_SNt4yfk</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954944</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954944</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Mon, 20 Sep 2010 18:03:01 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 18:12:21 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>Tim06TR schrieb:</p>
<blockquote>
<p>Und wie kopier ich die Klasse auf den &quot;Klasse&quot; zeigt und weise diese Kopie &quot;Super&quot; zu. (-&gt;elegant)</p>
</blockquote>
<pre><code class="language-cpp">Classo Super = *Klasse;
</code></pre>
<p>oder wenn Du auch unbedingt new verwenden willst.</p>
<pre><code class="language-cpp">Classo* Super = new Classo(Klasse);
</code></pre>
</blockquote>
<p>1. Erste Methode über Variable geht nicht siehe Fehler oben vorletzter Post<br />
2. Ist nur schlecht wenn der Konstruktor der Klasse einen Parameter hat</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954948</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954948</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Mon, 20 Sep 2010 18:12:21 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 18:21:59 GMT]]></title><description><![CDATA[<p>Tim06TR schrieb:</p>
<blockquote>
<p>volkard schrieb:</p>
<blockquote>
<p>Tim06TR schrieb:</p>
<blockquote>
<p>Und wie kopier ich die Klasse auf den &quot;Klasse&quot; zeigt und weise diese Kopie &quot;Super&quot; zu. (-&gt;elegant)</p>
</blockquote>
<pre><code class="language-cpp">Classo Super = *Klasse;
</code></pre>
<p>oder wenn Du auch unbedingt new verwenden willst.</p>
<pre><code class="language-cpp">Classo* Super = new Classo(Klasse);
</code></pre>
</blockquote>
<p>1. Erste Methode über Variable geht nicht siehe Fehler oben vorletzter Post</p>
</blockquote>
<p>Verstehe Dein &quot;geht nicht&quot; nicht.</p>
<p>Tim06TR schrieb:</p>
<blockquote>
<p>2. Ist nur schlecht wenn der Konstruktor der Klasse einen Parameter hat</p>
</blockquote>
<p><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="😕"
    /></p>
<p>Das müsste übrigends</p>
<pre><code class="language-cpp">Classo* Super = new Classo(*Klasse);
</code></pre>
<p>heißen, wenn Klasse ein Zeiger ist.</p>
<p>siehe<br />
<a href="http://codepad.org/5lYtdCdF" rel="nofollow">http://codepad.org/5lYtdCdF</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954954</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954954</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Mon, 20 Sep 2010 18:21:59 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 18:36:13 GMT]]></title><description><![CDATA[<p>Tim06TR schrieb:</p>
<blockquote>
<p>wie kopier ich den gesamten array, bzw was ist hier noch falsch.<br />
(zu Words)</p>
<pre><code class="language-cpp">KLASSE* Words[3];
for (i = 0; i &lt; 3; i++)
Words[3] = new KLASSE;
</code></pre>
</blockquote>
<p>Du meintest wohl <code>Words[i]</code> statt <code>Words[3]</code> . Abgesehen davon sehe ich da keinen Fehler. Vielleicht gibst Du mal vollständige(!) aber kleine(!) Codebeispiele ohne Abtippfehler(!).</p>
<p>Tim06TR schrieb:</p>
<blockquote>
<p>und der new konstruktor funzt auch für Arrays (new[])</p>
</blockquote>
<p><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="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1954960</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954960</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Mon, 20 Sep 2010 18:36:13 GMT</pubDate></item><item><title><![CDATA[Reply to Q: Pointer Basics on Mon, 20 Sep 2010 18:55:59 GMT]]></title><description><![CDATA[<p>Ich machs jetzt anders, ohne die gesamte Klasse zu kopieren, sondern nur eine Eigenschaft.</p>
<pre><code class="language-cpp">TStringList* Words_Buffer[3];
for (i = 0; i &lt; 3; i++)
{
	Words_Buffer[i] = new TStringList();
	for (int j = 0; j &lt; Words[0]-&gt;Count; j++)
	{
		Words_Buffer[i]-&gt;Add(Words[i]-&gt;Strings[VecShuffle[j&rsqb;&rsqb;);
	}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1954971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1954971</guid><dc:creator><![CDATA[5cript]]></dc:creator><pubDate>Mon, 20 Sep 2010 18:55:59 GMT</pubDate></item></channel></rss>