<?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[C++ Vector mit Struct, v.erase benutzen]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich lerne momentan Vectoren zu benutzen und habe gerade ein Problem.</p>
<pre><code>struct Marke
{
	 int Eintrag;
	 char Name[30];
};

  vector&lt;Marke&gt; vec(10);

  vec[0].Eintrag = 1;
  strcpy(vec[0].Name, &quot;Hallo&quot;);
</code></pre>
<p>Ich weiss das macht absolut keinen Sinn aber ich bin halt am probieren. Nun möchte ich diesen Eintrag wieder löschen.</p>
<p>Mit dem erase komme ich einfach nicht klar:<br />
v.erase(i); Entfernt das Element i aus v.</p>
<p>Wie entferne ich nun zb den Eintrag bei [0]?</p>
<p>Danke für eure Hilfe</p>
<p>Gruss</p>
<p>Typhoon</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/217550/c-vector-mit-struct-v-erase-benutzen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 10 Oct 2026 15:53:14 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/217550.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 08 Jul 2008 16:51:49 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 16:51:49 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich lerne momentan Vectoren zu benutzen und habe gerade ein Problem.</p>
<pre><code>struct Marke
{
	 int Eintrag;
	 char Name[30];
};

  vector&lt;Marke&gt; vec(10);

  vec[0].Eintrag = 1;
  strcpy(vec[0].Name, &quot;Hallo&quot;);
</code></pre>
<p>Ich weiss das macht absolut keinen Sinn aber ich bin halt am probieren. Nun möchte ich diesen Eintrag wieder löschen.</p>
<p>Mit dem erase komme ich einfach nicht klar:<br />
v.erase(i); Entfernt das Element i aus v.</p>
<p>Wie entferne ich nun zb den Eintrag bei [0]?</p>
<p>Danke für eure Hilfe</p>
<p>Gruss</p>
<p>Typhoon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1543628</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543628</guid><dc:creator><![CDATA[Typhoon]]></dc:creator><pubDate>Tue, 08 Jul 2008 16:51:49 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 17:04:47 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">v.erase (v.begin ());
</code></pre>
<p>?! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>EDIT:<br />
Du brauchst einen Iterator.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1543645</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543645</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 08 Jul 2008 17:04:47 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 17:14:05 GMT]]></title><description><![CDATA[<p>Ahh das funktioniert sogar.</p>
<p>Habs noch ein bisschen abgeändert, immer Speicherplätze zu reservieren macht ja keinen Sinn oder?</p>
<pre><code>vector&lt;Marke&gt; vec;

  Marke heini;
  heini.Eintrag = 1;
  strcpy(heini.Name, &quot;Hallo2&quot;);

  vec.push_back(heini);
</code></pre>
<p>Ich werds nachher noch mit Konstruktoren probieren, habe darüber gelesen.</p>
<p>Nochmal ne merwürdige Frage <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="😃"
    /> Nehmen wir an ich habe nun 3 Einträge in dem Vektor gespeichert, wie kann ich mit einem Iterator auf den zweiten zeigen? (Um ihn zb mit erase(i) zu löschen)</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1543660</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543660</guid><dc:creator><![CDATA[Typhoon]]></dc:creator><pubDate>Tue, 08 Jul 2008 17:14:05 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 17:31:05 GMT]]></title><description><![CDATA[<p><a href="http://www.cplusplus.com/reference/stl/vector/" rel="nofollow">http://www.cplusplus.com/reference/stl/vector/</a></p>
<p>iterator einfach inkrementieren.</p>
<pre><code class="language-cpp">std::vector&lt;T&gt; v;
std::vector&lt;T&gt;::iterator it = v.begin (); //erstes Element

++it; //zweites Element usw.

it = v.end (); // nach dem letzten Element (nicht T !)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1543672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543672</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 08 Jul 2008 17:31:05 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 18:01:32 GMT]]></title><description><![CDATA[<p>Danke</p>
<p>Nochmal ich</p>
<pre><code>vector&lt;Marke&gt; vec;
  vector&lt;Marke&gt;::iterator it = vec.begin ();

  Marke heini;

  heini.Eintrag = 1;
  strcpy(heini.Name, &quot;Hallo&quot;);
  vec.push_back(heini);

  strcpy(heini.Name, &quot;Hallo1&quot;);
  vec.push_back(heini);

  strcpy(heini.Name, &quot;Hallo2&quot;);
  vec.push_back(heini);

  strcpy(heini.Name, &quot;Hallo3&quot;);
  vec.push_back(heini);

  vec.erase(it);
</code></pre>
<p>Kannst du mir sagen wieso beim Ausführen das Programm crasht mit der Meldung: vector erase iterator outside range</p>
<p>Kann man eine Position auch direkt anspringen, sowas wie it = 3? Oder muss man sich dann eine for-Schleife machen?</p>
<p>Gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1543702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543702</guid><dc:creator><![CDATA[Typhoon]]></dc:creator><pubDate>Tue, 08 Jul 2008 18:01:32 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 18:13:18 GMT]]></title><description><![CDATA[<p>Schreib 100x: Du sollst Iteratoren nicht speichern!<br />
Danach rückst du die Zeile <em>vector&lt;Marke&gt;::iterator it = vec.begin ();</em> direkt vor das erase.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1543711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543711</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Tue, 08 Jul 2008 18:13:18 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 19:04:24 GMT]]></title><description><![CDATA[<p>Du bist genial <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>
<p>Wenn ihr an den zehnten Eintrag wollt, macht ihr dann:</p>
<p>for(int i=0; i&lt;10; i++)<br />
it++;</p>
<p>oder geht das auch schneller?</p>
<p>Super hilfe hier <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/1543730</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543730</guid><dc:creator><![CDATA[Typhoon]]></dc:creator><pubDate>Tue, 08 Jul 2008 19:04:24 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Vector mit Struct, v.erase benutzen on Tue, 08 Jul 2008 19:12:19 GMT]]></title><description><![CDATA[<p>vector hat RandomAccess-Iteratoren. Du kannst also direkt 10 auf den Startiterator aufaddieren. Oder einfach <strong>vec[9]</strong> schreiben, wie bei einem normalen Array</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1543733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1543733</guid><dc:creator><![CDATA[Pellaeon]]></dc:creator><pubDate>Tue, 08 Jul 2008 19:12:19 GMT</pubDate></item></channel></rss>