<?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[CPtrArray und eigene Klasse wie komm ich jetzt an meine Daten?]]></title><description><![CDATA[<p>Schönen guten Tag...</p>
<p>Ich habe leider ein ernsthaftes Problem mit meiner schönen Klasse und dem CPtrArray.</p>
<p>Ich habe eine Klasse &quot;Kuchen&quot; (ohne Assistent!) erstellt und möchte jetzt mehrere Objekte der Klasse in einem Array verwalten.<br />
Nachdem meine Versuche mit CArray gescheitert waren (wohl wegen der fehlenden Ableitung von CObject bei meiner Klasse Kuchen) bin ich auf CPtrArray umgestiegen. Ich kann die Objekte meiner Klasse anlegen und die Speicheradresse in meinem CPtrArray speichern. Soweit so gut.</p>
<p>Leider komm ich jetzt nicht mehr an meine Daten ran. Jeglicher Versuch mein frisch erstelltes Kuchenobjekt auf die in CPtrArray gespeicherte Adresse zu beigen ist gescheitert. In den zuvor erfolgreich beschriebenen Attributen meines Kuchenobjekts steht nur Mist. (Wer will schon Mistkuchen? :))</p>
<p>Kurzum mir gelingts einfach nicht aus dem void* ein CKuchen zu machen.</p>
<p>Ich hoffe das ist einigermaßen verständlich gewesen und mir kann wer helfen.<br />
1000 Dank schonmal im Vorraus!</p>
<p>Edit:<br />
Ich hab übrigens auch einen Copy-Konstruktor angelegt. Leider stürzt mir das Programm ab wenn ich dann eine der Getmethoden des im Konstruktor übegebenen Kuchenobjekts aufrufen will. Ist auch kein Wunder in den Variablen steht wie gesagt nur Mist.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143755/cptrarray-und-eigene-klasse-wie-komm-ich-jetzt-an-meine-daten</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Jul 2026 22:47:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143755.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 11 Apr 2006 13:21:49 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CPtrArray und eigene Klasse wie komm ich jetzt an meine Daten? on Tue, 11 Apr 2006 13:24:24 GMT]]></title><description><![CDATA[<p>Schönen guten Tag...</p>
<p>Ich habe leider ein ernsthaftes Problem mit meiner schönen Klasse und dem CPtrArray.</p>
<p>Ich habe eine Klasse &quot;Kuchen&quot; (ohne Assistent!) erstellt und möchte jetzt mehrere Objekte der Klasse in einem Array verwalten.<br />
Nachdem meine Versuche mit CArray gescheitert waren (wohl wegen der fehlenden Ableitung von CObject bei meiner Klasse Kuchen) bin ich auf CPtrArray umgestiegen. Ich kann die Objekte meiner Klasse anlegen und die Speicheradresse in meinem CPtrArray speichern. Soweit so gut.</p>
<p>Leider komm ich jetzt nicht mehr an meine Daten ran. Jeglicher Versuch mein frisch erstelltes Kuchenobjekt auf die in CPtrArray gespeicherte Adresse zu beigen ist gescheitert. In den zuvor erfolgreich beschriebenen Attributen meines Kuchenobjekts steht nur Mist. (Wer will schon Mistkuchen? :))</p>
<p>Kurzum mir gelingts einfach nicht aus dem void* ein CKuchen zu machen.</p>
<p>Ich hoffe das ist einigermaßen verständlich gewesen und mir kann wer helfen.<br />
1000 Dank schonmal im Vorraus!</p>
<p>Edit:<br />
Ich hab übrigens auch einen Copy-Konstruktor angelegt. Leider stürzt mir das Programm ab wenn ich dann eine der Getmethoden des im Konstruktor übegebenen Kuchenobjekts aufrufen will. Ist auch kein Wunder in den Variablen steht wie gesagt nur Mist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035243</guid><dc:creator><![CDATA[DonPep]]></dc:creator><pubDate>Tue, 11 Apr 2006 13:24:24 GMT</pubDate></item><item><title><![CDATA[Reply to CPtrArray und eigene Klasse wie komm ich jetzt an meine Daten? on Tue, 11 Apr 2006 21:52:34 GMT]]></title><description><![CDATA[<p>Eigentlich dich relativ einfach, ok Quelltext kenne ich von Dir nicht. Ich werde mal meine Kristallkugel bemühen :).</p>
<p>Setzen:</p>
<pre><code class="language-cpp">CPtrArray My_Array; //in *.h

//in *.cpp
CKuchen My_Kuchen = new CKuchen;
My_Kuchen-&gt;Belag = &quot;Sahne;

My_Array.Add((void*)My_Kuchen);
</code></pre>
<p>Lesen:</p>
<pre><code class="language-cpp">CKuchen *My_Kuchen = My_Array.GetAt(0);
if(My_Kuchen)
{
    //Mach was mit dem Kuchen, Backen zb.
    ::AfxMessageBox(My_Kuchen-&gt;Belag);
}
</code></pre>
<p>Nur mal so aus dem stehgreif, vergiss aber nicht im Destructor der Klasse die das PtrArray enthält, den Speicher der einzelnen Kuchenobjecte wieder frei zu geben.</p>
<p>zBsp:</p>
<pre><code class="language-cpp">int size = My_Array.GetSize();
for (int x = 1; x &lt;= size; x++)
{
	CKuchen* My_Kuchen = (CKuchen*)My_Array.GetAt(0);
	delete My_Kuchen;
	My_Array.RemoveAt(0);
}
</code></pre>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035559</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035559</guid><dc:creator><![CDATA[CTecS]]></dc:creator><pubDate>Tue, 11 Apr 2006 21:52:34 GMT</pubDate></item><item><title><![CDATA[Reply to CPtrArray und eigene Klasse wie komm ich jetzt an meine Daten? on Wed, 12 Apr 2006 05:38:41 GMT]]></title><description><![CDATA[<p>Nur zur Ergänzung:</p>
<p>hier</p>
<pre><code class="language-cpp">CKuchen *My_Kuchen = new CKuchen;
</code></pre>
<p>fehlte noch der *</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035618</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035618</guid><dc:creator><![CDATA[AndRo67]]></dc:creator><pubDate>Wed, 12 Apr 2006 05:38:41 GMT</pubDate></item><item><title><![CDATA[Reply to CPtrArray und eigene Klasse wie komm ich jetzt an meine Daten? on Wed, 12 Apr 2006 07:35:46 GMT]]></title><description><![CDATA[<p>Erstmal Danke für die Hilfe.</p>
<p>Ich hab mich jetzt an Eurem Beispiel orientiert und nun das Problem, dass ich bei</p>
<pre><code>My_Array.Add((void*)My_Kuchen);
</code></pre>
<p>Die Umwandlung von CKuchen in void* nicht machen kann</p>
<p>und bei</p>
<pre><code>CKuchen *My_Kuchen = My_Array.GetAt(0);
</code></pre>
<p>Die Umwandlung von void* in CKuchen nicht machen kann.<br />
Letzteres konnte ich lösen in dem ich einen Konstruktor</p>
<pre><code>CKuchen::CKuchen(void* Kuchen)
{
	//m_strKuchenName	= Kuchen-&gt;GetKuchenName();
}
</code></pre>
<p>erstellt habe. An die Werte komm ich aber nicht dran.</p>
<p>So kommts, dass ich dann bei</p>
<pre><code>CKuchen *TempKuchen = (CKuchen*)My_Array-&gt;GetAt(i);
</code></pre>
<p>Nicht meine Werte im TempKuchen stehen habe. i ist übrigens 0.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035643</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035643</guid><dc:creator><![CDATA[DonPep]]></dc:creator><pubDate>Wed, 12 Apr 2006 07:35:46 GMT</pubDate></item><item><title><![CDATA[Reply to CPtrArray und eigene Klasse wie komm ich jetzt an meine Daten? on Wed, 12 Apr 2006 11:58:07 GMT]]></title><description><![CDATA[<p>Hat sich erledigt. Ich hab an einer Stelle meinen Kuchen nicht als Pointer geführt, deswegen wurde nach dem verlassen der Funktion der Speicher wieder frei gegeben. Weil er noch nicht gänzlich überschrieben wurde haben die Werte teilweise gestimmt, teilweise nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035868</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035868</guid><dc:creator><![CDATA[DonPep]]></dc:creator><pubDate>Wed, 12 Apr 2006 11:58:07 GMT</pubDate></item></channel></rss>