<?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[Element eines Vectors mit einem int löschen]]></title><description><![CDATA[<p>hi</p>
<p>ich möchte ein bestimmtest Element aus einem Vector löschen und habe dafür einen integer als Index zu diesem Element. So Funktioniert das leider nicht ...</p>
<pre><code class="language-cpp">void MeineFunktion(int iIndex) {

    MeinVector.erase(iIndex);

    }
</code></pre>
<p>... da ein iterator erwartet wird. Dann hab ich es in etwa so versucht ...</p>
<pre><code class="language-cpp">MeineFunktion(int iIndex) {

    vector&lt;int&gt;::iterator it  = MeinVector.begin();
    int iVectorsize           = MeinVector.size();

    for(int i = 0; i&lt; iVectorsize;) {

        if(i == iIndex) { MeinVector.erase(it); }

        it++;
        i++;

        }

    }
</code></pre>
<p>... aber da kommen dann Meldungen wie &quot;error C2440: 'Initialisierung': 'std::_Vector_iterator&lt;_Ty,_Alloc&gt;' kann nicht in 'std::_Vector_iterator&lt;_Ty,_Alloc&gt;' konvertiert werden&quot;. Wie muss die Funktion lauten damit ein Element mit Integer gelöscht werden kann. Der Vector trägt mehrere structs.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/191373/element-eines-vectors-mit-einem-int-löschen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 25 Sep 2026 22:43:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/191373.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 02 Sep 2007 11:13:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 11:13:32 GMT]]></title><description><![CDATA[<p>hi</p>
<p>ich möchte ein bestimmtest Element aus einem Vector löschen und habe dafür einen integer als Index zu diesem Element. So Funktioniert das leider nicht ...</p>
<pre><code class="language-cpp">void MeineFunktion(int iIndex) {

    MeinVector.erase(iIndex);

    }
</code></pre>
<p>... da ein iterator erwartet wird. Dann hab ich es in etwa so versucht ...</p>
<pre><code class="language-cpp">MeineFunktion(int iIndex) {

    vector&lt;int&gt;::iterator it  = MeinVector.begin();
    int iVectorsize           = MeinVector.size();

    for(int i = 0; i&lt; iVectorsize;) {

        if(i == iIndex) { MeinVector.erase(it); }

        it++;
        i++;

        }

    }
</code></pre>
<p>... aber da kommen dann Meldungen wie &quot;error C2440: 'Initialisierung': 'std::_Vector_iterator&lt;_Ty,_Alloc&gt;' kann nicht in 'std::_Vector_iterator&lt;_Ty,_Alloc&gt;' konvertiert werden&quot;. Wie muss die Funktion lauten damit ein Element mit Integer gelöscht werden kann. Der Vector trägt mehrere structs.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357206</guid><dc:creator><![CDATA[polarhitze]]></dc:creator><pubDate>Sun, 02 Sep 2007 11:13:32 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 11:19:01 GMT]]></title><description><![CDATA[<p>polarhitze schrieb:</p>
<blockquote>
<p>Der Vector trägt mehrere structs.</p>
</blockquote>
<p>Dann solltest du vielleicht einen passenden Iterator benutzen, keinen für vector&lt;int&gt; <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/1357212</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357212</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Sun, 02 Sep 2007 11:19:01 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 12:17:04 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void  MeineFunktion(int index)
{
    MeinVector.erase(MeinVector.begin() + index);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1357251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357251</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 02 Sep 2007 12:17:04 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 12:36:05 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<pre><code class="language-cpp">void  MeineFunktion(int index)
{
    MeinVector.erase(MeinVector.begin() + index);
}
</code></pre>
</blockquote>
<p>Das gehört nicht ins WinAPI Forum, hustbaer.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357269</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357269</guid><dc:creator><![CDATA[CodeGrinder]]></dc:creator><pubDate>Sun, 02 Sep 2007 12:36:05 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 12:42:38 GMT]]></title><description><![CDATA[<p>CodeGrinder schrieb:</p>
<blockquote>
<p>hustbaer schrieb:</p>
<blockquote>
<pre><code class="language-cpp">void  MeineFunktion(int index)
{
    MeinVector.erase(MeinVector.begin() + index);
}
</code></pre>
</blockquote>
<p>Das gehört nicht ins WinAPI Forum, hustbaer.</p>
</blockquote>
<p>Und, darf man auf Fragen nicht antworten nur weil sie im falschen Forum stehen?<br />
Huh?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357272</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357272</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 02 Sep 2007 12:42:38 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 12:52:22 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>CodeGrinder schrieb:</p>
<blockquote>
<p>hustbaer schrieb:</p>
<blockquote>
<pre><code class="language-cpp">void  MeineFunktion(int index)
{
    MeinVector.erase(MeinVector.begin() + index);
}
</code></pre>
</blockquote>
<p>Das gehört nicht ins WinAPI Forum, hustbaer.</p>
</blockquote>
<p>Und, darf man auf Fragen nicht antworten nur weil sie im falschen Forum stehen?<br />
Huh?</p>
</blockquote>
<p>Du musst Fehlverhalten nicht noch belohnen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357279</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357279</guid><dc:creator><![CDATA[CodeGrinder]]></dc:creator><pubDate>Sun, 02 Sep 2007 12:52:22 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 14:01:50 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile-var-mode-is-viewprofile-and-u-is-18363.html" rel="nofollow">Jochen Kalmbach</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-4.html" rel="nofollow">WinAPI</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-15.html" rel="nofollow">C++</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39405.html" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357310</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357310</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Sun, 02 Sep 2007 14:01:50 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 14:09:50 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">template&lt;typename T&gt;
void erase_vector_item(std::vector&lt;T&gt;&amp; vec, std::size_t index)
{ if (vec.size() &lt;= index) throw std::invalid_argument(&quot;index&quot;); vec.erase(vec.begin() + index); }
</code></pre>
<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357314</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357314</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 02 Sep 2007 14:09:50 GMT</pubDate></item><item><title><![CDATA[Reply to Element eines Vectors mit einem int löschen on Sun, 02 Sep 2007 14:32:02 GMT]]></title><description><![CDATA[<p>(D)Evil schrieb:</p>
<blockquote>
<pre><code class="language-cpp">template&lt;typename T&gt;
void erase_vector_item(std::vector&lt;T&gt;&amp; vec, std::size_t index)
{ if (vec.size() &lt;= index) throw std::invalid_argument(&quot;index&quot;); vec.erase(vec.begin() + index); }
</code></pre>
<p>...</p>
</blockquote>
<pre><code class="language-cpp">template&lt;typename Container&gt;
void erase_index(Container &amp;container, typename Container::size_type index) {
  assert(std::distance(container.begin(), container.end()) &gt; index);

  typename Container::iterator it = container.begin();
  std::advance(it, index);
  container.erase(it);
}
</code></pre>
<p>(ungetestet)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357322</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357322</guid><dc:creator><![CDATA[Mr. N]]></dc:creator><pubDate>Sun, 02 Sep 2007 14:32:02 GMT</pubDate></item></channel></rss>