<?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[Zeiger versch. unbekannter Objekte in einer Liste speichern]]></title><description><![CDATA[<p>Hallo<br />
Ist es möglich Pointer auf Objekte verschiedener und zur Zeit des programmierens noch unbekannter<br />
Klassen in einer LinkedList o.ä. zu speichern ?<br />
Wenn ja wie?</p>
<p>Ich habs erst über templates versucht und mir eine eigene LinkedList-Klasse geschrieben, die hat auch<br />
gut Funktioniert, aber die konnte halt nur Pointer auf Objekte von immer der selben Klasse speichern.</p>
<p>Ich bräuchte aber eine Liste o.ä. mit der es möglich ist Pointer auf Objekte vieler verschiedener Klassen<br />
zu speichern.</p>
<p>MfG Nusso</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/251744/zeiger-versch-unbekannter-objekte-in-einer-liste-speichern</link><generator>RSS for Node</generator><lastBuildDate>Tue, 15 Sep 2026 07:34:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/251744.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 09 Oct 2009 16:28:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 16:28:36 GMT]]></title><description><![CDATA[<p>Hallo<br />
Ist es möglich Pointer auf Objekte verschiedener und zur Zeit des programmierens noch unbekannter<br />
Klassen in einer LinkedList o.ä. zu speichern ?<br />
Wenn ja wie?</p>
<p>Ich habs erst über templates versucht und mir eine eigene LinkedList-Klasse geschrieben, die hat auch<br />
gut Funktioniert, aber die konnte halt nur Pointer auf Objekte von immer der selben Klasse speichern.</p>
<p>Ich bräuchte aber eine Liste o.ä. mit der es möglich ist Pointer auf Objekte vieler verschiedener Klassen<br />
zu speichern.</p>
<p>MfG Nusso</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790257</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790257</guid><dc:creator><![CDATA[Nusso]]></dc:creator><pubDate>Fri, 09 Oct 2009 16:28:36 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 17:37:05 GMT]]></title><description><![CDATA[<p>Boost::Any könnte das sein, was du suchst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790288</guid><dc:creator><![CDATA[Gugi]]></dc:creator><pubDate>Fri, 09 Oct 2009 17:37:05 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 17:39:33 GMT]]></title><description><![CDATA[<p>Wenn man unbedingt will, kriegt man das auf irgendeine extrem hässliche Art bestimmt hin. Zum Beispiel mit <code>void*</code> -Pointern. Oder mit boost::any.</p>
<p>Eine gemeinsame Basisklasse wäre aber das Minimum, um sowas einigermaßen akzeptabel zu implementieren.<br />
Es gibt für dein Problem bestimmt eine bessere Lösung, also warum willst du sowas machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790292</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790292</guid><dc:creator><![CDATA[Registrierter Troll]]></dc:creator><pubDate>Fri, 09 Oct 2009 17:39:33 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 17:51:49 GMT]]></title><description><![CDATA[<p>eine gemeinsame Basisklasse geht nicht, da man die Klassen nicht kennt.<br />
Ich hab noch nie mit Boost gearbeitet, das sollte ich mir vll. mal anschauen.</p>
<p>Gibt es keine andere Möglichkeit sowas zu lösen ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790298</guid><dc:creator><![CDATA[Nusso]]></dc:creator><pubDate>Fri, 09 Oct 2009 17:51:49 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 18:01:40 GMT]]></title><description><![CDATA[<p>wie gesagt gibt es die möglichkeit über void* pointer zu gehen - und extra noch mit anzugeben, um welche klasse es sich handelt...<br />
allerdings wird das sehr schnell sehr unübersichtlich:</p>
<pre><code class="language-cpp">struct my_ptr
{
 X id;
 void* ptr;
};

my_ptr foo;
//...
switch(foo.id)
{
  case STD_STRING:
    static_cast&lt;std::string&gt; (ptr)-&gt;...;
    break;
  case ...
    ;

  default:
    //exception oder so..
}
</code></pre>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790302</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790302</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Fri, 09 Oct 2009 18:01:40 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 18:14:11 GMT]]></title><description><![CDATA[<p>ich würd halt gern eine InputKlasse schreiben, die eben diese Pointer speichert und ggf. die Methoden aufruft.</p>
<pre><code class="language-cpp">void Add(char pKey, Class&amp; pObj, void(Class::* pMemFunc)(void))
</code></pre>
<p>so weit klappt alles, jetzt muss ich die Pointer nur noch irgendwie in einer Liste oder einem Array oder sonst was speichern ...</p>
<p>danke an alle für eure Hilfe, ist aber leider noch nicht das nach dem ich gesucht hab.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/16305">@unskilled</a>: so etwas in der Art hab ich mir vorgestellt .. aber so wie in deinem Beispiel kann ich das leider nicht benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790314</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790314</guid><dc:creator><![CDATA[Nusso]]></dc:creator><pubDate>Fri, 09 Oct 2009 18:14:11 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 18:21:38 GMT]]></title><description><![CDATA[<p>dann sag mal, was du genau möchtest(nicht womit du es lösen möchtest), dann wird vll jmd nen weg wissen!?</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790318</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790318</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Fri, 09 Oct 2009 18:21:38 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger versch. unbekannter Objekte in einer Liste speichern on Fri, 09 Oct 2009 18:24:28 GMT]]></title><description><![CDATA[<p>Informiere dich mal über boost::bind und boost::function, dann nimmst du einfach eine std::list&lt;boost::function&lt;void ()&gt; &gt; und verwendest boost::bind(&amp;klasse::funktion, objekt) um aus den memberfunktionen boost::function-Objekte zu machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1790319</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1790319</guid><dc:creator><![CDATA[OhneName]]></dc:creator><pubDate>Fri, 09 Oct 2009 18:24:28 GMT</pubDate></item></channel></rss>