<?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[delete -&amp;gt; assertion failure]]></title><description><![CDATA[<p>wenn ich ein Objekt als Zeiger instanziere:</p>
<pre><code class="language-cpp">IrgendeineKlasse* instanz = new IrgendeineKlasse();
</code></pre>
<p>kann ich doch den reservierten Speicher wieder mit</p>
<pre><code class="language-cpp">delete instanz;
</code></pre>
<p>freigeben</p>
<p>Wenn ich des aber wie folgt mache, bekomme ich ein &quot;Assertion failure&quot; von Visual Studio gemeldet wenn ich die Instanz wieder zerstören möchte. Kann man da &quot;delete&quot; nicht anweden oder warum klappt das nicht?</p>
<pre><code class="language-cpp">IrgendeineKlasse instanz;
delete &amp;instanz;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/174334/delete-gt-assertion-failure</link><generator>RSS for Node</generator><lastBuildDate>Fri, 18 Sep 2026 21:52:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/174334.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 25 Feb 2007 17:41:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to delete -&amp;gt; assertion failure on Sun, 25 Feb 2007 17:41:48 GMT]]></title><description><![CDATA[<p>wenn ich ein Objekt als Zeiger instanziere:</p>
<pre><code class="language-cpp">IrgendeineKlasse* instanz = new IrgendeineKlasse();
</code></pre>
<p>kann ich doch den reservierten Speicher wieder mit</p>
<pre><code class="language-cpp">delete instanz;
</code></pre>
<p>freigeben</p>
<p>Wenn ich des aber wie folgt mache, bekomme ich ein &quot;Assertion failure&quot; von Visual Studio gemeldet wenn ich die Instanz wieder zerstören möchte. Kann man da &quot;delete&quot; nicht anweden oder warum klappt das nicht?</p>
<pre><code class="language-cpp">IrgendeineKlasse instanz;
delete &amp;instanz;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1235332</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1235332</guid><dc:creator><![CDATA[grandpa]]></dc:creator><pubDate>Sun, 25 Feb 2007 17:41:48 GMT</pubDate></item><item><title><![CDATA[Reply to delete -&amp;gt; assertion failure on Sun, 25 Feb 2007 17:55:58 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>warum sollte man im zweitem Fall ein delete machen müßen? Dort ist instanz ein Stack-Objekt und wird automatisch gelöscht wenn der Scope verlassen wird. Das du aber den Compiler zwingst trotzdem zu löschen bringt die Speicherverwaltung durcheinander, den Erfolg siehst du an deiner Fehlermeldung.<br />
Merke : Zu einem new gehört immer ein delete. Wo kein new da ist auch kein delete (Ausnahmen bestätigen die Regel)</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1235338</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1235338</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sun, 25 Feb 2007 17:55:58 GMT</pubDate></item><item><title><![CDATA[Reply to delete -&amp;gt; assertion failure on Sun, 25 Feb 2007 17:58:50 GMT]]></title><description><![CDATA[<p>ok, danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1235340</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1235340</guid><dc:creator><![CDATA[grandpa]]></dc:creator><pubDate>Sun, 25 Feb 2007 17:58:50 GMT</pubDate></item><item><title><![CDATA[Reply to delete -&amp;gt; assertion failure on Fri, 02 Mar 2007 20:01:14 GMT]]></title><description><![CDATA[<p>ich habe das gleiche problem. bekomme auch eine Fehlermeldung wenn ich das programm ausführe und delete machen will.</p>
<p>Danke!<br />
mfg,<br />
shed</p>
<pre><code class="language-cpp">int main( int argc, char* argv[] )
{
   int len= 0;

   changeValue(&amp;len);

   delete len;
}

void changeValue(int* len)
{
   len[0] = 7; 
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1238290</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1238290</guid><dc:creator><![CDATA[shed]]></dc:creator><pubDate>Fri, 02 Mar 2007 20:01:14 GMT</pubDate></item><item><title><![CDATA[Reply to delete -&amp;gt; assertion failure on Fri, 02 Mar 2007 20:06:22 GMT]]></title><description><![CDATA[<p>Hat sich erledigt danke! Ich brauch da ja gar kein delete <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1238291</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1238291</guid><dc:creator><![CDATA[shed]]></dc:creator><pubDate>Fri, 02 Mar 2007 20:06:22 GMT</pubDate></item><item><title><![CDATA[Reply to delete -&amp;gt; assertion failure on Fri, 02 Mar 2007 20:13:10 GMT]]></title><description><![CDATA[<p>shed schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int main( int argc, char* argv[] )
{
   int len= 0;
   
   changeValue(&amp;len);

   delete len;
}

void changeValue(int* len)
{
   len[0] = 7; 
}
</code></pre>
</blockquote>
<p>wie kommst du auf len[0] = 7; ?<br />
Sicher funktioniert es aber es impliziert doch das len ein Array ist.</p>
<p>Nimm doch *len = 7;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1238293</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1238293</guid><dc:creator><![CDATA[darthdespotism]]></dc:creator><pubDate>Fri, 02 Mar 2007 20:13:10 GMT</pubDate></item></channel></rss>