<?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[C++: verschiedene Objekte als Rückgabewert]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich möchte, dass mein Parser einen String zerlegt und je nach Id in dem String eine Referenz auf ein exisitierendes Objekt der passenden Klasse zurückgibt. Alle Klassen, die für eine Rückgabe in Frage kommen, erben von einer gemeinsam Parent-Klasse.<br />
Wie kann ich nun zur Laufzeit erkennen, um welches konkrete Objekt es sich handelt?<br />
- Einen anderen Ansatz mit new würde ich gerne Vermeiden, ich denke hier lauern zu viele Risiken (zB: <a href="http://www.c-plusplus.net/forum/272921?highlight=downcast" rel="nofollow">http://www.c-plusplus.net/forum/272921?highlight=downcast</a><br />
- dynamic_cast scheint mir hier auch nicht das passende zu sein<br />
(vll sind templates eine Lösung?)</p>
<p>Über ein paar gute Hinweise / einen kleinen Fetzen Code wäre ich sehr dankbar.<br />
lg<br />
moon</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/310714/c-verschiedene-objekte-als-rückgabewert</link><generator>RSS for Node</generator><lastBuildDate>Tue, 04 Aug 2026 05:58:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/310714.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 19 Nov 2012 01:55:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++: verschiedene Objekte als Rückgabewert on Mon, 19 Nov 2012 01:56:57 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich möchte, dass mein Parser einen String zerlegt und je nach Id in dem String eine Referenz auf ein exisitierendes Objekt der passenden Klasse zurückgibt. Alle Klassen, die für eine Rückgabe in Frage kommen, erben von einer gemeinsam Parent-Klasse.<br />
Wie kann ich nun zur Laufzeit erkennen, um welches konkrete Objekt es sich handelt?<br />
- Einen anderen Ansatz mit new würde ich gerne Vermeiden, ich denke hier lauern zu viele Risiken (zB: <a href="http://www.c-plusplus.net/forum/272921?highlight=downcast" rel="nofollow">http://www.c-plusplus.net/forum/272921?highlight=downcast</a><br />
- dynamic_cast scheint mir hier auch nicht das passende zu sein<br />
(vll sind templates eine Lösung?)</p>
<p>Über ein paar gute Hinweise / einen kleinen Fetzen Code wäre ich sehr dankbar.<br />
lg<br />
moon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272200</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272200</guid><dc:creator><![CDATA[moon12]]></dc:creator><pubDate>Mon, 19 Nov 2012 01:56:57 GMT</pubDate></item><item><title><![CDATA[Reply to C++: verschiedene Objekte als Rückgabewert on Mon, 19 Nov 2012 04:37:14 GMT]]></title><description><![CDATA[<p>Allgemein solltest du schauen, dass du das gar nicht erkennen musst.</p>
<p>In dem Fall ist new + unique_ptr wohl, meiner Meinung nach das Vernünftigste.<br />
Die verlinkten Probleme haben weniger mit new und Zeigern zu tun, sondern eher mit mangelnden Zeigern, bzw slicing.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272216</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272216</guid><dc:creator><![CDATA[KMT]]></dc:creator><pubDate>Mon, 19 Nov 2012 04:37:14 GMT</pubDate></item><item><title><![CDATA[Reply to C++: verschiedene Objekte als Rückgabewert on Mon, 19 Nov 2012 11:50:54 GMT]]></title><description><![CDATA[<p>Ich würde eine einzige Tokenklasse benutzen und darin ein enum für den Typ haben. Alle anderen Ansätze werden auch nur irgendwie jedem Token seinen Typen zuweisen, da kann man es auch direkt machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272319</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272319</guid><dc:creator><![CDATA[nwp3]]></dc:creator><pubDate>Mon, 19 Nov 2012 11:50:54 GMT</pubDate></item></channel></rss>