<?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[[Erledigt] 2dimensionale Vectoren auslesen]]></title><description><![CDATA[<p>Hi,</p>
<p>ich bin gerade dabei, mir einen 2 dimensionalen Vector zu schreiben, um mir darin meine Mapdaten (also quasi Tilemap) darin zu speichern.<br />
Funktioniert bisher auch toll, nur der Zugriff zu dem entsprechenden Index will mir nicht einleuchten.</p>
<p>Der Vector sieht wie folgt aus:</p>
<pre><code class="language-cpp">std::vector&lt;std::vector&lt;int&gt;&gt; vMapData;
</code></pre>
<p>Die dazugehörigen Iteratoren:</p>
<pre><code class="language-cpp">std::vector&lt;int&gt;::iterator i = vMapData[0].begin();
std::vector&lt;std::vector&lt;int&gt;&gt;::iterator j = vMapData.begin();
</code></pre>
<p>Naja und die dazugehörige for schleifen Verschachtelung:</p>
<pre><code class="language-cpp">for( ; i!= vMapData[0].end(); ++i)
	{
		for(; j!= vMapData.end(); ++j)
		{
			switch(---&gt;&gt;&gt;mein Problem&lt;&lt;&lt;---)
			{
			case 0:
				sTexture = &quot;Chipset/gras.PNG&quot;;
				break;
			case 1:
				sTexture = &quot;Chipset/rock.PNG&quot;;
				break;
			}
		}
	}
</code></pre>
<p>Habe hier am &quot;---&gt;&gt;&gt;mein Problem&lt;&lt;&lt;---&quot;-Punkt einiges ausprobiert z.B.</p>
<pre><code class="language-cpp">vMapData[i][j]
vMapData.at(i).at(j)
</code></pre>
<p>allerdings immer mit entsprechender Fehlermeldung^^</p>
<pre><code>error C2664: 'const std::vector&lt;_Ty&gt; &amp;std::vector&lt;std::vector&lt;_Ty&gt;&gt;::at(unsigned int) 
const': Konvertierung des Parameters 1 von 'std::_Vector_iterator&lt;_Ty,_Alloc&gt;' in 'unsigned int' nicht möglich
</code></pre>
<p>(eine davon, gehört zu dem .at() Beispiel)</p>
<p>Nunja, jetzt bin ich am Ende mit meinem Latein und wende mich (wieder mal :)) voller Hoffnung an euch xD</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/268562/erledigt-2dimensionale-vectoren-auslesen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 01 Sep 2026 16:46:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/268562.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 10 Jun 2010 23:26:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Erledigt] 2dimensionale Vectoren auslesen on Fri, 11 Jun 2010 12:37:02 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich bin gerade dabei, mir einen 2 dimensionalen Vector zu schreiben, um mir darin meine Mapdaten (also quasi Tilemap) darin zu speichern.<br />
Funktioniert bisher auch toll, nur der Zugriff zu dem entsprechenden Index will mir nicht einleuchten.</p>
<p>Der Vector sieht wie folgt aus:</p>
<pre><code class="language-cpp">std::vector&lt;std::vector&lt;int&gt;&gt; vMapData;
</code></pre>
<p>Die dazugehörigen Iteratoren:</p>
<pre><code class="language-cpp">std::vector&lt;int&gt;::iterator i = vMapData[0].begin();
std::vector&lt;std::vector&lt;int&gt;&gt;::iterator j = vMapData.begin();
</code></pre>
<p>Naja und die dazugehörige for schleifen Verschachtelung:</p>
<pre><code class="language-cpp">for( ; i!= vMapData[0].end(); ++i)
	{
		for(; j!= vMapData.end(); ++j)
		{
			switch(---&gt;&gt;&gt;mein Problem&lt;&lt;&lt;---)
			{
			case 0:
				sTexture = &quot;Chipset/gras.PNG&quot;;
				break;
			case 1:
				sTexture = &quot;Chipset/rock.PNG&quot;;
				break;
			}
		}
	}
</code></pre>
<p>Habe hier am &quot;---&gt;&gt;&gt;mein Problem&lt;&lt;&lt;---&quot;-Punkt einiges ausprobiert z.B.</p>
<pre><code class="language-cpp">vMapData[i][j]
vMapData.at(i).at(j)
</code></pre>
<p>allerdings immer mit entsprechender Fehlermeldung^^</p>
<pre><code>error C2664: 'const std::vector&lt;_Ty&gt; &amp;std::vector&lt;std::vector&lt;_Ty&gt;&gt;::at(unsigned int) 
const': Konvertierung des Parameters 1 von 'std::_Vector_iterator&lt;_Ty,_Alloc&gt;' in 'unsigned int' nicht möglich
</code></pre>
<p>(eine davon, gehört zu dem .at() Beispiel)</p>
<p>Nunja, jetzt bin ich am Ende mit meinem Latein und wende mich (wieder mal :)) voller Hoffnung an euch xD</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1910380</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1910380</guid><dc:creator><![CDATA[DNKpp]]></dc:creator><pubDate>Fri, 11 Jun 2010 12:37:02 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] 2dimensionale Vectoren auslesen on Fri, 11 Jun 2010 02:16:38 GMT]]></title><description><![CDATA[<p>du vermischt iterator-zugriff mit operator[], was nicht gut kommen kann.<br />
ein iterator ist ein Zeiger auf das Objekt im Vector.<br />
der operator[] erwartet einen unsigned wert.</p>
<p>hier ein kleines Beispiel:</p>
<pre><code class="language-cpp">for(unsigned int x= 0; x&lt;vMapData.size(); x++)
   for(unsigned int y = 0; y&lt;vMapData[x].size(); y++)
      std::cout &lt;&lt; vMapData[x][y] &lt;&lt; std::endl;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1910386</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1910386</guid><dc:creator><![CDATA[BigNeal]]></dc:creator><pubDate>Fri, 11 Jun 2010 02:16:38 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] 2dimensionale Vectoren auslesen on Fri, 11 Jun 2010 02:32:03 GMT]]></title><description><![CDATA[<p>Ja, das ist mir ja klar^^<br />
Nur meine Frage ist, wie letztendlich die Syntax für einen gültigen Zugriff auf meine Vectoren über Iteratoren ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1910388</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1910388</guid><dc:creator><![CDATA[DNKpp]]></dc:creator><pubDate>Fri, 11 Jun 2010 02:32:03 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] 2dimensionale Vectoren auslesen on Fri, 11 Jun 2010 05:59:54 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Wie wärs damit</p>
<pre><code class="language-cpp">for( std::vector&lt;std::vector&lt;int&gt; &gt;::iterator j = vMapData.begin(); j!=vMapData.end(); ++j) {
  for( std::vector&lt;int&gt;::iterator i = j-&gt;begin(); i!=j-&gt;end(); ++i) {
  // tu was mit i
  }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1910405</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1910405</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Fri, 11 Jun 2010 05:59:54 GMT</pubDate></item><item><title><![CDATA[Reply to [Erledigt] 2dimensionale Vectoren auslesen on Fri, 11 Jun 2010 12:36:32 GMT]]></title><description><![CDATA[<p>Ok,<br />
das war wieder mein fehlendes Puzzlteilchen^^</p>
<p>Wenn man j auf i-&gt;begin() setzt, und nicht wie ich willkürlich auf 1 Element von MapData, dann ist j Praktisch der Punkt auf meinem Koordsystem.</p>
<p>Danke dafür.</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1910676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1910676</guid><dc:creator><![CDATA[DNKpp]]></dc:creator><pubDate>Fri, 11 Jun 2010 12:36:32 GMT</pubDate></item></channel></rss>