<?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[Exception als Pointer oder als Objekt werfen?]]></title><description><![CDATA[<p>Hallo,<br />
ist es schneller einen Pointer bei einer Exception zu werfen als ein Objekt?<br />
Muss ich das Exception Objekt selber deleten, wenn ich da einen Pointer nehme?</p>
<p>Gruß,<br />
Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/239900/exception-als-pointer-oder-als-objekt-werfen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 07:06:02 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/239900.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 29 Apr 2009 11:12:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Exception als Pointer oder als Objekt werfen? on Wed, 29 Apr 2009 11:12:18 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ist es schneller einen Pointer bei einer Exception zu werfen als ein Objekt?<br />
Muss ich das Exception Objekt selber deleten, wenn ich da einen Pointer nehme?</p>
<p>Gruß,<br />
Andy</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703066</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703066</guid><dc:creator><![CDATA[Andy2211]]></dc:creator><pubDate>Wed, 29 Apr 2009 11:12:18 GMT</pubDate></item><item><title><![CDATA[Reply to Exception als Pointer oder als Objekt werfen? on Wed, 29 Apr 2009 11:22:11 GMT]]></title><description><![CDATA[<p>Bei einer Exception sollte es Dich nicht interessieren, wie schnell das Verfahren ist. Wenn das zum Flaschenhals wird, verwendest Du Exceptions (lies: Ausnahme) vermutlich falsch.</p>
<p>Generell kann man sagen: Ein try/catch Block kostet wenig, solange er nicht genutzt wird, sprich, keine Exception fliegt.</p>
<p>Und, was Du mit new allokierst, musst <strong>Du</strong> mit delete löschen. Auch eine Exception ändert daran nichts, warum auch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703072</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703072</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Wed, 29 Apr 2009 11:22:11 GMT</pubDate></item><item><title><![CDATA[Reply to Exception als Pointer oder als Objekt werfen? on Wed, 29 Apr 2009 11:23:03 GMT]]></title><description><![CDATA[<p>Wenn du etwas mit new holst dann mußte es auch selebr deleten. Die Exception würde ich normal werfen und nicht über new.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703073</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703073</guid><dc:creator><![CDATA[Xebov]]></dc:creator><pubDate>Wed, 29 Apr 2009 11:23:03 GMT</pubDate></item><item><title><![CDATA[Reply to Exception als Pointer oder als Objekt werfen? on Wed, 29 Apr 2009 11:28:39 GMT]]></title><description><![CDATA[<p>hmmmm,</p>
<p>ich meine mich daran zu erinnern, dass man Exceptions NIEMALS als Heapobjekte werfen sollte:<br />
Einerseits weiß man nie, ob man ein delete darauf ausführen muss oder nicht darf.<br />
Andererseits soll die Runtime das Exceptionobjekt in einen &quot;sicheren Speicherbereich&quot; kopieren (z.B. damit auch sowas wie bad_alloc funktionieren kann). Wenn man nun nur den Zeiger auf ein Heapobjekt wirft, landet nur der im &quot;sicheren Bereich&quot; ... was nicht im Sinne des Erfinders ist.<br />
Der empfohlene (lies &quot;einzig zuverlässig sichere&quot;) Weg ist das Werfen als Autoobject (&quot; <code>throw Exception(1, &quot;Simon2&quot;);</code> &quot;) und das Fangen per Referenz (&quot; <code>catch(Exception&amp; e)</code> &quot;).</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703077</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703077</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 29 Apr 2009 11:28:39 GMT</pubDate></item><item><title><![CDATA[Reply to Exception als Pointer oder als Objekt werfen? on Wed, 29 Apr 2009 11:38:34 GMT]]></title><description><![CDATA[<p>Simon2 schrieb:</p>
<blockquote>
<p>Einerseits weiß man nie, ob man ein delete darauf ausführen muss oder nicht darf.</p>
</blockquote>
<p>Dürfte das Problem sein, was man immer hat, wenn man (die Verantwortung für einen) Zeiger aus dem Scope herausgibt, oder?<br />
In diesem Sinne gilt das gesagte natürlich, aber in beiden Situationen gleichermaßen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703080</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703080</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Wed, 29 Apr 2009 11:38:34 GMT</pubDate></item><item><title><![CDATA[Reply to Exception als Pointer oder als Objekt werfen? on Wed, 29 Apr 2009 12:02:53 GMT]]></title><description><![CDATA[<p>Andy2211 schrieb:</p>
<blockquote>
<p>Hallo,<br />
ist es schneller einen Pointer bei einer Exception zu werfen als ein Objekt?<br />
Muss ich das Exception Objekt selber deleten, wenn ich da einen Pointer nehme?</p>
<p>Gruß,<br />
Andy</p>
</blockquote>
<p>Es geht nicht um Schnelligkeit , und sowieso Speicher dynamisch zu allokieren ist auf jeden Fall langsamer als auf dem Stack .<br />
Aber was passiert wenn gar kein dyn. Speicher mehr zu verfügung steht ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703099</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703099</guid><dc:creator><![CDATA[kitov]]></dc:creator><pubDate>Wed, 29 Apr 2009 12:02:53 GMT</pubDate></item></channel></rss>