<?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[iterator löschen]]></title><description><![CDATA[<p>Hallo NG,</p>
<pre><code class="language-cpp">multimap&lt;unsigned int, Something *&gt; manyObjects;

pair&lt;multimap&lt;unsigned int, Something *&gt;::iterator,
multimap&lt;unsigned int,Something *&gt;::iterator&gt; listOfDublicatedObjects;
multimap&lt;unsigned int,Something *&gt;::iterator aObject;

listOfDublicatedObjedts = manyObjects.equal_range(4711);

for( aObject = listOfDublicatedObjects.first;
  aObject != listOfDublicatedObjects.second; aObject++) {
  // Do somthing with the object
}
</code></pre>
<p>Ich habe hier eine Liste an doppelten Einträgen aus einer multimap. Nach dessen Bearbeitung würde ich listOfDublicatedObjects gerne löschen. Da die Liste von der STL angelegt wurde, weiß ich nun nicht wie?</p>
<pre><code class="language-cpp">listOfDublicatedObjects.first = listOfDublicatedObjects.second
</code></pre>
<p>Würde wie eine leere List aussehen, aber ich würde der STL ins Handwerk pfuschen. Und eine Funktion wie ich die Liste lösche, scheint es nicht zu geben.</p>
<p>Weiß mir jemand einen Tipp?</p>
<p>Gruß<br />
M. Incani</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/181051/iterator-löschen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 02:00:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/181051.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 09 May 2007 14:00:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:36:21 GMT]]></title><description><![CDATA[<p>Hallo NG,</p>
<pre><code class="language-cpp">multimap&lt;unsigned int, Something *&gt; manyObjects;

pair&lt;multimap&lt;unsigned int, Something *&gt;::iterator,
multimap&lt;unsigned int,Something *&gt;::iterator&gt; listOfDublicatedObjects;
multimap&lt;unsigned int,Something *&gt;::iterator aObject;

listOfDublicatedObjedts = manyObjects.equal_range(4711);

for( aObject = listOfDublicatedObjects.first;
  aObject != listOfDublicatedObjects.second; aObject++) {
  // Do somthing with the object
}
</code></pre>
<p>Ich habe hier eine Liste an doppelten Einträgen aus einer multimap. Nach dessen Bearbeitung würde ich listOfDublicatedObjects gerne löschen. Da die Liste von der STL angelegt wurde, weiß ich nun nicht wie?</p>
<pre><code class="language-cpp">listOfDublicatedObjects.first = listOfDublicatedObjects.second
</code></pre>
<p>Würde wie eine leere List aussehen, aber ich würde der STL ins Handwerk pfuschen. Und eine Funktion wie ich die Liste lösche, scheint es nicht zu geben.</p>
<p>Weiß mir jemand einen Tipp?</p>
<p>Gruß<br />
M. Incani</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281660</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281660</guid><dc:creator><![CDATA[BlackPepper]]></dc:creator><pubDate>Wed, 09 May 2007 14:36:21 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:03:06 GMT]]></title><description><![CDATA[<p>Interesssant !</p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281663</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 09 May 2007 14:03:06 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:08:00 GMT]]></title><description><![CDATA[<p>Hallo NG,</p>
<p>sorry für den vorherigen Müll, ich hab aus versehen Absenden erwischt. Nun aber zu meiner Frage.</p>
<pre><code class="language-cpp">multimap&lt;unsigned int, Something *&gt; manyObjects;

pair&lt;multimap&lt;unsigned int, Something *&gt;::iterator,
multimap&lt;unsigned int,Something *&gt;::iterator&gt; listOfDublicatedObjects;
multimap&lt;unsigned int,Something *&gt;::iterator aObject;

listOfDublicatedObjedts = manyObjects.equal_range(4711);

for( aObject = listOfDublicatedObjects.first;
  aObject != listOfDublicatedObjects.second; aObject++) {
  // Do somthing with the object
}
</code></pre>
<p>Ich habe hier eine Liste an doppelten Einträgen aus einer multimap. Nach dessen Bearbeitung würde ich listOfDublicatedObjects gerne löschen. Da die Liste von der STL angelegt wurde, weiß ich nun nicht wie?</p>
<pre><code class="language-cpp">listOfDublicatedObjects.first = listOfDublicatedObjects.second
</code></pre>
<p>Würde wie eine leere List aussehen, aber ich würde der STL ins Handwerk pfuschen. Und eine Funktion wie ich die Liste lösche, scheint es nicht zu geben.</p>
<p>Weiß mir jemand einen Tipp?</p>
<p>Gruß<br />
M. Incani</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281672</guid><dc:creator><![CDATA[BlackPepper]]></dc:creator><pubDate>Wed, 09 May 2007 14:08:00 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:09:09 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>sorry für den wertlosen Beitrag, ich hatte statt Vorschau Absenden erwischt.</p>
<p>Gruß M. Incani</p>
<p>Simon2 schrieb:</p>
<blockquote>
<p>Interesssant !</p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1281674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281674</guid><dc:creator><![CDATA[BlackPepper]]></dc:creator><pubDate>Wed, 09 May 2007 14:09:09 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:14:22 GMT]]></title><description><![CDATA[<p>Es gibt auch sowas wie &quot;Editieren&quot; <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281679</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281679</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Wed, 09 May 2007 14:14:22 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:16:11 GMT]]></title><description><![CDATA[<p>Wie? Wo? Kann ich einen bereits abgeschickten Beitrag editieren?</p>
<p>KasF schrieb:</p>
<blockquote>
<p>Es gibt auch sowas wie &quot;Editieren&quot; <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1281685</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281685</guid><dc:creator><![CDATA[BlackPepper]]></dc:creator><pubDate>Wed, 09 May 2007 14:16:11 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:26:29 GMT]]></title><description><![CDATA[<p>Also. &quot;listOfDuplicatedObjects loeschen&quot; kann man verschieden interpretieren.<br />
Die Variable an sich ist ein Iteratorpaar, keine Liste an sich. Dieses Iteratorpaar zu loeschen hat keinen grossartigen Sinn in meinen Augen, vie alle anderen Objekte auch wird das automatisch geloescht sobald du den Scope verlaesst.</p>
<p>den Teil des Multimap zu loeschen, der aus Eintraegen mit gleichem Key besteht, ist etwas einfacher:</p>
<pre><code class="language-cpp">multimap&lt;unsigned int, Something *&gt; manyObjects;

typedef multimap&lt;unsigned int, Something *&gt;::iterator multimapIter; //machts etwas lesbarer

pair&lt;multimapIter, multimapIter&gt; listOfDublicatedObjects = manyObjects.equal_range(4711);

for(multimapIter aObject = listOfDublicatedObjects.first;
  aObject != listOfDublicatedObjects.second; aObject++) {
  // Do somthing with the object
}

//alles erledigt, was zu erledigen war? also alles loeschen was dazwischen liegt!

manyObjects.erase(listOfDublicatedObjects.first, listOfDublicatedObjects.second); // so einfach ist das!
</code></pre>
<p>sollte zumindest funktioniern...</p>
<p>/edit: den edit-link findest du rechts oben ueber deinem jeweiligen Post, direkt neben dem &quot;Zitieren&quot; link, den du offensichtlich schon gefunden hast <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/1281695</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281695</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 09 May 2007 14:26:29 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:33:53 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Die Variable an sich ist ein Iteratorpaar, keine Liste an sich. Dieses Iteratorpaar zu loeschen hat keinen grossartigen Sinn in meinen Augen, vie alle anderen Objekte auch wird das automatisch geloescht sobald du den Scope verlaesst.</p>
<p>den Teil des Multimap zu loeschen, der aus Eintraegen mit gleichem Key besteht, ist etwas einfacher:</p>
<p>sollte zumindest funktioniern...</p>
<p>/edit: den edit-link findest du rechts oben ueber deinem jeweiligen Post, direkt neben dem &quot;Zitieren&quot; link, den du offensichtlich schon gefunden hast <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>
</blockquote>
<p>Ich will die Objekte der Multimap garnicht löschen. Ich würde gerne dafür sorgen, daß das Iteratorpaar wieder leer ist.</p>
<p>Gruß M. Incani</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281706</guid><dc:creator><![CDATA[BlackPepper]]></dc:creator><pubDate>Wed, 09 May 2007 14:33:53 GMT</pubDate></item><item><title><![CDATA[Reply to iterator löschen on Wed, 09 May 2007 14:42:27 GMT]]></title><description><![CDATA[<p>BlackPepper schrieb:</p>
<blockquote>
<p>Ich will die Objekte der Multimap garnicht löschen. Ich würde gerne dafür sorgen, daß das Iteratorpaar wieder leer ist.</p>
<p>Gruß M. Incani</p>
</blockquote>
<p>Im Iterator ist nicht wirklich &quot;was drin&quot;, sondern er zeigt auf etwas, also kann man hin wohl auch nicht leeren. Ob man dafuer sorgen kann, dass er auf nix mehr zeigt, ist ne andere Frage. Aber wozu sollte man das wollen?<br />
Entweder du moechtest ihn anderweitig benutzen, dann weise ihm neue Werte zu und gut ist. Oder du willst ihn garnicht mehr benutzen, dann lass ihn einfach links liegen und den Compiler am Ende des Scopes die Aufraeumarbeiten machen. In beiden Faellen wird weder der Iterator an deiner Multimap rumpfuschen, wenn du es ihm nicht sagst, noch wird eine Aenderung an der Multimap uer Probleme sorgen.</p>
<p>Es sei denn, du dereferezierst den Iterator, nachdem du die multimap geloescht hast oder anderweitig Schu=indluder betreibst <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Aber das scheinst du ja nicht vor zuhaben.</p>
<p>Und auch das Iteratorpaar an sich kann man nicht leeren, denn als ein Paar besteht es immer aus zwei Iteratoren, niemals aus einem oder gar keinem <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281714</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281714</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 09 May 2007 14:42:27 GMT</pubDate></item></channel></rss>