<?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[mal wieder Pointer ...]]></title><description><![CDATA[<p>Irgendwann kapiere ich es vielleicht auch, aber wie lange das noch dauert, ist derzeit noch nicht abzuschätzen. Aber zunächst ein bisschen Code:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

class CAusnahme1{
public:
	static int iCounter;
	CAusnahme1()
	{
		iCounter ++;
		cout &lt;&lt; &quot;Erstelle Klasse Ausnahme1!&quot; &lt;&lt; endl;
	}
	~CAusnahme1() {
		cout &lt;&lt; &quot;Zerstöre Klasse Ausnahme1!&quot; &lt;&lt; endl;
	}
};

int CAusnahme1::iCounter = 0;

int main()
{
	CAusnahme1* pC1[3]; // Array aus CAusnahme1-Pointern
	CAusnahme1 pC2[] = {CAusnahme1(), CAusnahme1(), CAusnahme1()};  // Array aus CAusnahme1-Objekten

	for (int i = 0; i &lt; 3; i++)
	{
		pC1[i] = &amp;pC2[i];
	}

	cout &lt;&lt; pC1 &lt;&lt; endl;
	cout &lt;&lt; pC1[0] &lt;&lt; endl;

	return 0;
}
</code></pre>
<p>Ausgabe:</p>
<pre><code>Erstelle Klasse Ausnahme1!
Erstelle Klasse Ausnahme1!
Erstelle Klasse Ausnahme1!
0xbfde137c
0xbfde138d
Zerstöre Klasse Ausnahme1!
Zerstöre Klasse Ausnahme1!
Zerstöre Klasse Ausnahme1!
</code></pre>
<p>Wieso kommen da Unterschiedliche Adressen raus bei</p>
<pre><code>cout &lt;&lt; pC1 &lt;&lt; endl;
cout &lt;&lt; pC1[0] &lt;&lt; endl;
</code></pre>
<p>???</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/285049/mal-wieder-pointer</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 15:15:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/285049.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 13 Apr 2011 11:37:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to mal wieder Pointer ... on Wed, 13 Apr 2011 11:37:20 GMT]]></title><description><![CDATA[<p>Irgendwann kapiere ich es vielleicht auch, aber wie lange das noch dauert, ist derzeit noch nicht abzuschätzen. Aber zunächst ein bisschen Code:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

class CAusnahme1{
public:
	static int iCounter;
	CAusnahme1()
	{
		iCounter ++;
		cout &lt;&lt; &quot;Erstelle Klasse Ausnahme1!&quot; &lt;&lt; endl;
	}
	~CAusnahme1() {
		cout &lt;&lt; &quot;Zerstöre Klasse Ausnahme1!&quot; &lt;&lt; endl;
	}
};

int CAusnahme1::iCounter = 0;

int main()
{
	CAusnahme1* pC1[3]; // Array aus CAusnahme1-Pointern
	CAusnahme1 pC2[] = {CAusnahme1(), CAusnahme1(), CAusnahme1()};  // Array aus CAusnahme1-Objekten

	for (int i = 0; i &lt; 3; i++)
	{
		pC1[i] = &amp;pC2[i];
	}

	cout &lt;&lt; pC1 &lt;&lt; endl;
	cout &lt;&lt; pC1[0] &lt;&lt; endl;

	return 0;
}
</code></pre>
<p>Ausgabe:</p>
<pre><code>Erstelle Klasse Ausnahme1!
Erstelle Klasse Ausnahme1!
Erstelle Klasse Ausnahme1!
0xbfde137c
0xbfde138d
Zerstöre Klasse Ausnahme1!
Zerstöre Klasse Ausnahme1!
Zerstöre Klasse Ausnahme1!
</code></pre>
<p>Wieso kommen da Unterschiedliche Adressen raus bei</p>
<pre><code>cout &lt;&lt; pC1 &lt;&lt; endl;
cout &lt;&lt; pC1[0] &lt;&lt; endl;
</code></pre>
<p>???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2048615</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2048615</guid><dc:creator><![CDATA[acelab]]></dc:creator><pubDate>Wed, 13 Apr 2011 11:37:20 GMT</pubDate></item><item><title><![CDATA[Reply to mal wieder Pointer ... on Wed, 13 Apr 2011 11:40:40 GMT]]></title><description><![CDATA[<p>Das erste ist die Adresse, an der das Array liegt, dass zweite die Adresse, die im ersten Array-Element gespeichert ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2048617</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2048617</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Wed, 13 Apr 2011 11:40:40 GMT</pubDate></item><item><title><![CDATA[Reply to mal wieder Pointer ... on Wed, 13 Apr 2011 11:52:40 GMT]]></title><description><![CDATA[<p>Äquivalent zu</p>
<pre><code class="language-cpp">cout &lt;&lt; pC1 &lt;&lt; endl;
</code></pre>
<p>ist</p>
<pre><code class="language-cpp">cout &lt;&lt; &amp;pC1[0] &lt;&lt; endl;
</code></pre>
<p>Oder ein anderes Beispiel:</p>
<pre><code class="language-cpp">void f(int*);

..
int* p = new int[12];
f(p); // funktioniert, p zeigt auf das erste Element
f(&amp;p[0]); // dito
f(p[0]); // funktioniert nicht, p[0] ist ein int
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2048625</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2048625</guid><dc:creator><![CDATA[ptr_]]></dc:creator><pubDate>Wed, 13 Apr 2011 11:52:40 GMT</pubDate></item></channel></rss>