<?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[Aus einer liste löschen]]></title><description><![CDATA[<p>Ich habe gerade eine kleine Particlenegine geschrieben und kriege aus irgendeinem einem mir nicht ersichtlichen Grund Fehler beim Ausführen. Es ist eine Simple Liste mit dem Typ <code>CParticle*</code> als Basisclasse. Der Code sieht in Etwa so aus:</p>
<pre><code>//Particle.h
static std::list&lt;CParticle*&gt; gParticles; //Das static muss da hin da diese Zeile hier in einer Header-Datei ist

//Main.cpp
gParticles.push_back(new SFireParticle(/*Parameter*/));

//Main.cpp
for (std::list&lt;CParticle*&gt;::iterator Iterator = gParticles.begin(); Iterator != gParticles.end();)
		if (!(*Iterator)-&gt;GetAlive())
			gParticles.erase(Iterator);
		else
			++Iterator;
</code></pre>
<p>Das Kompilieren klappt super, aber sobald ich ein Particle spawne, und es dann gelöst wird, kriege ich eine Fehlermeldung die sagt &quot;list iterators incompadible&quot;. Wie kann ich das lösen?</p>
<p>Schonmal danke in advance <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/topic/339850/aus-einer-liste-löschen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Apr 2026 16:57:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/339850.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 03 Oct 2016 18:18:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aus einer liste löschen on Mon, 03 Oct 2016 18:18:11 GMT]]></title><description><![CDATA[<p>Ich habe gerade eine kleine Particlenegine geschrieben und kriege aus irgendeinem einem mir nicht ersichtlichen Grund Fehler beim Ausführen. Es ist eine Simple Liste mit dem Typ <code>CParticle*</code> als Basisclasse. Der Code sieht in Etwa so aus:</p>
<pre><code>//Particle.h
static std::list&lt;CParticle*&gt; gParticles; //Das static muss da hin da diese Zeile hier in einer Header-Datei ist

//Main.cpp
gParticles.push_back(new SFireParticle(/*Parameter*/));

//Main.cpp
for (std::list&lt;CParticle*&gt;::iterator Iterator = gParticles.begin(); Iterator != gParticles.end();)
		if (!(*Iterator)-&gt;GetAlive())
			gParticles.erase(Iterator);
		else
			++Iterator;
</code></pre>
<p>Das Kompilieren klappt super, aber sobald ich ein Particle spawne, und es dann gelöst wird, kriege ich eine Fehlermeldung die sagt &quot;list iterators incompadible&quot;. Wie kann ich das lösen?</p>
<p>Schonmal danke in advance <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/2510415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2510415</guid><dc:creator><![CDATA[WhileTrueDo]]></dc:creator><pubDate>Mon, 03 Oct 2016 18:18:11 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einer liste löschen on Mon, 03 Oct 2016 18:30:35 GMT]]></title><description><![CDATA[<p>Worauf zeigt Iterator nach erase?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2510417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2510417</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Mon, 03 Oct 2016 18:30:35 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einer liste löschen on Mon, 03 Oct 2016 18:42:31 GMT]]></title><description><![CDATA[<p>Ich hatte zwei code-Abschnitte und in einem stand <code>Iterator = gParticles.erase(Iterator);</code> Danke für den Hinweis. Habe seit Stunden versucht den Fehler zu finden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2510418</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2510418</guid><dc:creator><![CDATA[WhileTrueDo]]></dc:creator><pubDate>Mon, 03 Oct 2016 18:42:31 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einer liste löschen on Wed, 05 Oct 2016 09:24:59 GMT]]></title><description><![CDATA[<p>WhileTrueDo schrieb:</p>
<blockquote>
<pre><code>//Particle.h
static std::list&lt;CParticle*&gt; gParticles; //Das static muss da hin da diese Zeile hier in einer Header-Datei ist
</code></pre>
</blockquote>
<p>Gar nicht gut!<br />
Überlege mal, was passiert wenn du die Headerdatei in zwei verschiedene CPP-Dateien einbindest?!<br />
Globale Variablen solltest du vermeiden - insbesondere wenn es Teil einer Engine sein soll.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2510628</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2510628</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Wed, 05 Oct 2016 09:24:59 GMT</pubDate></item></channel></rss>