<?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[Elemente in std::list tauschen]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe eine std::list, welche Pointer auf Objekte enthält. In dieser möchte ich jetzt zwei aufeinanderfolgende Elemente tauschen, so dass die ihre Position in der Liste wechseln. Aktuell habe ich das so, dass ich die Listenitteratoren it1 und it2 auf die beiden Positionen halte, und diese dann miteinander tausche:</p>
<pre><code>std::list&lt;entityBase*&gt;::iterator it1,it2

...
it1=m_entityList.begin();
it2=it1;
it2++;
...
swapEntity=*it1;
*it1=*it2;
*it2=swapEntity;
</code></pre>
<p>Da Fehler in solchen Listengeschichten gerne mal erst sehr viel später und an dubios anderen Stellen aufschlagen: ist das so richtig? Tauscht mir das tatsächlich die beiden Elemente innerhalb der Liste?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/330837/elemente-in-std-list-tauschen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 02 Jul 2026 18:23:21 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/330837.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 28 Jan 2015 08:23:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Elemente in std::list tauschen on Wed, 28 Jan 2015 08:23:07 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe eine std::list, welche Pointer auf Objekte enthält. In dieser möchte ich jetzt zwei aufeinanderfolgende Elemente tauschen, so dass die ihre Position in der Liste wechseln. Aktuell habe ich das so, dass ich die Listenitteratoren it1 und it2 auf die beiden Positionen halte, und diese dann miteinander tausche:</p>
<pre><code>std::list&lt;entityBase*&gt;::iterator it1,it2

...
it1=m_entityList.begin();
it2=it1;
it2++;
...
swapEntity=*it1;
*it1=*it2;
*it2=swapEntity;
</code></pre>
<p>Da Fehler in solchen Listengeschichten gerne mal erst sehr viel später und an dubios anderen Stellen aufschlagen: ist das so richtig? Tauscht mir das tatsächlich die beiden Elemente innerhalb der Liste?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440133</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440133</guid><dc:creator><![CDATA[Zooom]]></dc:creator><pubDate>Wed, 28 Jan 2015 08:23:07 GMT</pubDate></item><item><title><![CDATA[Reply to Elemente in std::list tauschen on Wed, 28 Jan 2015 08:25:52 GMT]]></title><description><![CDATA[<p><a href="http://www.cplusplus.com/reference/algorithm/iter_swap/" rel="nofollow">std::iter_swap</a>?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440134</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440134</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Wed, 28 Jan 2015 08:25:52 GMT</pubDate></item><item><title><![CDATA[Reply to Elemente in std::list tauschen on Wed, 28 Jan 2015 08:35:42 GMT]]></title><description><![CDATA[<p>Zusatz zur obigen Antwort: Dein Code selber ist auch richtig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440135</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440135</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 28 Jan 2015 08:35:42 GMT</pubDate></item><item><title><![CDATA[Reply to Elemente in std::list tauschen on Wed, 28 Jan 2015 08:37:55 GMT]]></title><description><![CDATA[<p>OK, danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2440136</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2440136</guid><dc:creator><![CDATA[Zooom]]></dc:creator><pubDate>Wed, 28 Jan 2015 08:37:55 GMT</pubDate></item></channel></rss>