<?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 durch Pointer?]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe ein problem mit dem Löschen von Elementen eines Vektors, welcher ales pointer an eine Funktion übergeben wird.</p>
<pre><code class="language-cpp">#include &lt;vector&gt;

using namespace std; 

typedef unsigned int uint;

void funct1 (vector&lt;uint&gt; **allvectors){

             vector&lt;uint&gt;::iterator it=allvectors[1][0].begin();

             while (it != allvectors[1][0].end()) {

				if (it-&gt;allvectors[1][0] == 1) {

					allvectors[1][0].erase(it);

					break;

					}

					++it;

}

}

int main(){

      vector&lt;uint&gt; vect1;

      for(int i=0;i &lt; 10;i++){ 

      vect1.push_back(i);

}

vector&lt;uint&gt; *allvectors[10];

*allvectors[1]=vect1;

funct1(allvectors);

}
</code></pre>
<p>ICh erhalte beim Kompilieren immer eine Fehlermeldung.<br />
Leider habe ich keine Ahnung, was das Problem mit dem it-&gt; pointer ist.<br />
Vielen Dank im Voraus!!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/258261/vector-erase-durch-pointer</link><generator>RSS for Node</generator><lastBuildDate>Wed, 09 Sep 2026 11:28:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/258261.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 08 Jan 2010 14:04:34 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Vector-erase durch Pointer? on Fri, 08 Jan 2010 14:04:34 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe ein problem mit dem Löschen von Elementen eines Vektors, welcher ales pointer an eine Funktion übergeben wird.</p>
<pre><code class="language-cpp">#include &lt;vector&gt;

using namespace std; 

typedef unsigned int uint;

void funct1 (vector&lt;uint&gt; **allvectors){

             vector&lt;uint&gt;::iterator it=allvectors[1][0].begin();

             while (it != allvectors[1][0].end()) {

				if (it-&gt;allvectors[1][0] == 1) {

					allvectors[1][0].erase(it);

					break;

					}

					++it;

}

}

int main(){

      vector&lt;uint&gt; vect1;

      for(int i=0;i &lt; 10;i++){ 

      vect1.push_back(i);

}

vector&lt;uint&gt; *allvectors[10];

*allvectors[1]=vect1;

funct1(allvectors);

}
</code></pre>
<p>ICh erhalte beim Kompilieren immer eine Fehlermeldung.<br />
Leider habe ich keine Ahnung, was das Problem mit dem it-&gt; pointer ist.<br />
Vielen Dank im Voraus!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835008</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835008</guid><dc:creator><![CDATA[Martin2000]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:04:34 GMT</pubDate></item><item><title><![CDATA[Reply to Vector-erase durch Pointer? on Fri, 08 Jan 2010 14:12:12 GMT]]></title><description><![CDATA[<p>Abgesehen von der fürchterlichen Einrückung und der unausführlichen Compilermeldung:</p>
<p>if (it-&gt;allvectors[1][0] == 1) { wird zu if (*it == 1)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835011</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835011</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:12:12 GMT</pubDate></item><item><title><![CDATA[Reply to Vector-erase durch Pointer? on Fri, 08 Jan 2010 14:57:08 GMT]]></title><description><![CDATA[<p>Danke!</p>
<p>Ja klar, der Iterator muss nur noch dereferenziert werden! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835055</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835055</guid><dc:creator><![CDATA[Martin2000]]></dc:creator><pubDate>Fri, 08 Jan 2010 14:57:08 GMT</pubDate></item><item><title><![CDATA[Reply to Vector-erase durch Pointer? on Fri, 08 Jan 2010 17:53:12 GMT]]></title><description><![CDATA[<p>Martin2000 schrieb:</p>
<blockquote>
<p>ICh erhalte beim Kompilieren immer eine Fehlermeldung.</p>
</blockquote>
<p>Zur Laufzeit wirds auch nicht besser werden. Du erstellst hier ein Array von Zeigern auf 10 <code>std::vector&lt;uint&gt;</code> s. Selbst wenn ich mir erklären könnte, warum man so einen umständlichen Weg wählt, bliebe immer noch das Problem, dass du nicht initialisierte Zeiger dereferenzierst.</p>
<pre><code class="language-cpp">vector&lt;uint&gt; *allvectors[10]; 
*allvectors[1]=vect1;
</code></pre>
<p>Zeiger auf Zeiger braucht man auch nur sehr selten in C++. Was willst du genau erreichen? Wir können dir wahrscheinlich eine bessere Möglichkeit aufzeigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1835198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1835198</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 08 Jan 2010 17:53:12 GMT</pubDate></item></channel></rss>