<?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[vector::erase problem]]></title><description><![CDATA[<p>hola leute</p>
<p>hab folgendes codefragment:</p>
<pre><code class="language-cpp">/* Grouptable: typedef std::vector&lt;BaseDataEx&gt; GroupTable; */

abelog::GroupTable::iterator temp = group_table.begin() + Grid-&gt;Row - 1;
ShowMessage(temp-&gt;text.c_str()); // (1)
group_table.erase(temp); // (2)
UpdateGrid();
</code></pre>
<p>ich hab hier eine tabelle, wo ich einzelne eintrage rausloeschen koennen will.<br />
die zeile (1) hab ich nur mal reingeschrieben um zu sehen ob der iterator auf<br />
das richtige element zeigt. das passt auch so. wenn ich dann jedoch in zeile (2)<br />
das element aus dem vector rausloesche und meine tabelle wieder aktualisiere wurde<br />
das letzte element geloescht. da kannich angeben was ich will. es wird immer das letzte element geloescht. wie kann das kommen.<br />
passsiert auch wenn ich erase den begin-iterator uebergebe.</p>
<p>jemand ne idee ?</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/145668/vector-erase-problem</link><generator>RSS for Node</generator><lastBuildDate>Thu, 03 Sep 2026 14:13:33 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/145668.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 30 Apr 2006 09:34:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 09:34:47 GMT]]></title><description><![CDATA[<p>hola leute</p>
<p>hab folgendes codefragment:</p>
<pre><code class="language-cpp">/* Grouptable: typedef std::vector&lt;BaseDataEx&gt; GroupTable; */

abelog::GroupTable::iterator temp = group_table.begin() + Grid-&gt;Row - 1;
ShowMessage(temp-&gt;text.c_str()); // (1)
group_table.erase(temp); // (2)
UpdateGrid();
</code></pre>
<p>ich hab hier eine tabelle, wo ich einzelne eintrage rausloeschen koennen will.<br />
die zeile (1) hab ich nur mal reingeschrieben um zu sehen ob der iterator auf<br />
das richtige element zeigt. das passt auch so. wenn ich dann jedoch in zeile (2)<br />
das element aus dem vector rausloesche und meine tabelle wieder aktualisiere wurde<br />
das letzte element geloescht. da kannich angeben was ich will. es wird immer das letzte element geloescht. wie kann das kommen.<br />
passsiert auch wenn ich erase den begin-iterator uebergebe.</p>
<p>jemand ne idee ?</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048151</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048151</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Sun, 30 Apr 2006 09:34:47 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 10:39:32 GMT]]></title><description><![CDATA[<p>Dein Problem liegt wo anders. erase bei einem vector funktioniert so wie du es gezeigt hast.<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048208</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048208</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Sun, 30 Apr 2006 10:39:32 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 11:21:51 GMT]]></title><description><![CDATA[<p>re</p>
<p>ist halt die frage wo das problem dann liegen soll. UpdateGrid macht ja nix anderes als den vector durch zu iterieren und den inhalt in einem grid anzuzeigen.</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048263</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048263</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Sun, 30 Apr 2006 11:21:51 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 11:24:32 GMT]]></title><description><![CDATA[<p>in jeder code zeile ne debugmessage ausgeben (mit den werten des vectors)...<br />
villecith hilft das weiter und du findest den fehler.</p>
<p>Mfg Shade37337</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048267</guid><dc:creator><![CDATA[branleb]]></dc:creator><pubDate>Sun, 30 Apr 2006 11:24:32 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 11:55:43 GMT]]></title><description><![CDATA[<p>hola shade37337</p>
<p>hab deine idee mal in die tat umgesetzt und mir den vector nach jedem schritt<br />
in eine datei schreiben lassen.<br />
er löscht wirklich immer das letzte element. egal was ich ihm angebe.<br />
bei ner anderen table hab ich das problem jedoch nicht.</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048289</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Sun, 30 Apr 2006 11:55:43 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 12:00:47 GMT]]></title><description><![CDATA[<p>Das klingt nach einem Problem mit copy-ctor / Zuweisungs Operator in der Klasse BaseDataEx oder einfach einem falschem Index ( z.b Grid-&gt;Row == 0 ).<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048296</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Sun, 30 Apr 2006 12:00:47 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 12:08:02 GMT]]></title><description><![CDATA[<p>re</p>
<p>index is inordnung, ansonsten wuerde er mir auch auch nicht das richtige zu loeschende element ausgeben. ich guck mir aber nochmals die BaseDataEx an. vielleicht liegt ja wirklich da der hund begraben</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048305</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048305</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Sun, 30 Apr 2006 12:08:02 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 13:36:03 GMT]]></title><description><![CDATA[<p>re</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7155">@ZuK</a></p>
<p>deine vermutung lag richtig, das das problem in der BaseDataEx lag.</p>
<p>jetz mal ne frage: wo liegt der unterschied zwischen folgenden zwei zeilen ?</p>
<pre><code class="language-cpp">*((BaseData*)this)   = *((BaseData*)&amp;bdx);
(BaseData)*this      = bdx;
</code></pre>
<p>sollte beides nicht dsa gleiche machen ??</p>
<p>Meep Meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048381</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048381</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Sun, 30 Apr 2006 13:36:03 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Sun, 30 Apr 2006 16:52:53 GMT]]></title><description><![CDATA[<p>Keine Ahnung wo und ob da ein Unterschied ist.<br />
Der cast auf der linken Seite ist aber entweder nicht notwendig oder falsch. Sieht irgendwie so aus als ob du den typ von this ändern wolltest und das ist IMHO nicht erlaubt.<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048515</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Sun, 30 Apr 2006 16:52:53 GMT</pubDate></item><item><title><![CDATA[Reply to vector::erase problem on Thu, 04 May 2006 22:20:19 GMT]]></title><description><![CDATA[<p>was wäre mit:</p>
<pre><code class="language-cpp">temp = group_table.erase(temp);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1051156</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1051156</guid><dc:creator><![CDATA[kurtl]]></dc:creator><pubDate>Thu, 04 May 2006 22:20:19 GMT</pubDate></item></channel></rss>