<?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[Dreidimensionales Array mit Zeigern auf Klasseninstanzen - WIE GEHTS?!]]></title><description><![CDATA[<p>Hallo!<br />
Ich schlage mich nun schon seit mehreren Stunden (!) mit einem Problem herum:</p>
<p>Ich habe eine Klasse &quot;Tile&quot;. Davon gibt es viele Instanzen, die ich alle in einem zweidimensionalen Array speichere - Tile *tileList[4][8].<br />
Dieses zweidimensionale sollte nun doch lieber ein dreidimensionales werden. Und die 3. Dimension soll ihre Größe einer globalen Variable entnehmen, die am Anfang des Programmes berechnet wurde.<br />
Wenn ich nun das hier:</p>
<pre><code class="language-cpp">Tile *tileList[gSystem-&gt;bgTileCount][4][8];
</code></pre>
<p>In der Headerdatei der &quot;Tile&quot;-Klasse schreibe, bekomme ich den Fehler:</p>
<blockquote>
<p>data member may not have variably modified type `Tile*[((unsigned int)((int)Singleton&lt;T&gt;::get [with T = System]()-&gt;System::bgTileCount))][8][4]' BGTilesUI.hpp LevelEditor/src line 13 C/C++ Problem</p>
</blockquote>
<p>Mittlerweile ist mein Kopf schon so verbrummt, dass ich garnicht mehr weiss wie ich das Problem genau formulieren soll (habe auch schon so viele unteschiedliche Dinge ausprobiert)...jedenfalls - kann ich dieses Array irgendwie umsetzen?<br />
Oder soll ich lieber einen dreidimensionalen Vektor verwenden? Wenn ja - wie gehts das :)? Das hab ich nämlich auch schon - ohne Erfolg - versucht...</p>
<p>Bin verzweifelt - ALSO BITTE HELFEN :)!!</p>
<p>Danke, danke, danke für die Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/241915/dreidimensionales-array-mit-zeigern-auf-klasseninstanzen-wie-gehts</link><generator>RSS for Node</generator><lastBuildDate>Mon, 21 Sep 2026 04:26:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/241915.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 27 May 2009 16:10:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Dreidimensionales Array mit Zeigern auf Klasseninstanzen - WIE GEHTS?! on Wed, 27 May 2009 16:10:54 GMT]]></title><description><![CDATA[<p>Hallo!<br />
Ich schlage mich nun schon seit mehreren Stunden (!) mit einem Problem herum:</p>
<p>Ich habe eine Klasse &quot;Tile&quot;. Davon gibt es viele Instanzen, die ich alle in einem zweidimensionalen Array speichere - Tile *tileList[4][8].<br />
Dieses zweidimensionale sollte nun doch lieber ein dreidimensionales werden. Und die 3. Dimension soll ihre Größe einer globalen Variable entnehmen, die am Anfang des Programmes berechnet wurde.<br />
Wenn ich nun das hier:</p>
<pre><code class="language-cpp">Tile *tileList[gSystem-&gt;bgTileCount][4][8];
</code></pre>
<p>In der Headerdatei der &quot;Tile&quot;-Klasse schreibe, bekomme ich den Fehler:</p>
<blockquote>
<p>data member may not have variably modified type `Tile*[((unsigned int)((int)Singleton&lt;T&gt;::get [with T = System]()-&gt;System::bgTileCount))][8][4]' BGTilesUI.hpp LevelEditor/src line 13 C/C++ Problem</p>
</blockquote>
<p>Mittlerweile ist mein Kopf schon so verbrummt, dass ich garnicht mehr weiss wie ich das Problem genau formulieren soll (habe auch schon so viele unteschiedliche Dinge ausprobiert)...jedenfalls - kann ich dieses Array irgendwie umsetzen?<br />
Oder soll ich lieber einen dreidimensionalen Vektor verwenden? Wenn ja - wie gehts das :)? Das hab ich nämlich auch schon - ohne Erfolg - versucht...</p>
<p>Bin verzweifelt - ALSO BITTE HELFEN :)!!</p>
<p>Danke, danke, danke für die Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1716818</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1716818</guid><dc:creator><![CDATA[dukems2112]]></dc:creator><pubDate>Wed, 27 May 2009 16:10:54 GMT</pubDate></item><item><title><![CDATA[Reply to Dreidimensionales Array mit Zeigern auf Klasseninstanzen - WIE GEHTS?! on Wed, 27 May 2009 16:58:55 GMT]]></title><description><![CDATA[<p>Da kannst auf dem Stack kein Array variabler Größe anlegen. Dazu müsstest du dynmisch speicher alloziieren mit new.</p>
<p>Aber nimm am besten einen std::vector:</p>
<pre><code class="language-cpp">vector&lt;Tile *&gt; v3(8,0);
vector&lt; vector&lt;Tile *&gt; &gt; v2(4, v3);
vector&lt; vector&lt; vector&lt;Tile *&gt; &gt; &gt; v(gSystem-&gt;bgTileCount, v2);

v[0][2][1] = new Tile;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1716831</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1716831</guid><dc:creator><![CDATA[this-*gt*that]]></dc:creator><pubDate>Wed, 27 May 2009 16:58:55 GMT</pubDate></item><item><title><![CDATA[Reply to Dreidimensionales Array mit Zeigern auf Klasseninstanzen - WIE GEHTS?! on Wed, 27 May 2009 17:10:06 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-5577.html" rel="nofollow">rapso</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-7.html" rel="nofollow">Spiele-/Grafikprogrammierung</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/1716839</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1716839</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Wed, 27 May 2009 17:10:06 GMT</pubDate></item><item><title><![CDATA[Reply to Dreidimensionales Array mit Zeigern auf Klasseninstanzen - WIE GEHTS?! on Wed, 27 May 2009 20:46:27 GMT]]></title><description><![CDATA[<p>this-&gt;that schrieb:</p>
<blockquote>
<p>Aber nimm am besten einen std::vector:</p>
<pre><code class="language-cpp">vector&lt;Tile *&gt; v3(8,0);
vector&lt; vector&lt;Tile *&gt; &gt; v2(4, v3);
vector&lt; vector&lt; vector&lt;Tile *&gt; &gt; &gt; v(gSystem-&gt;bgTileCount, v2);

v[0][2][1] = new Tile;
</code></pre>
</blockquote>
<p>hm...das sieht schon nach dem aus, was ich suche.<br />
Allerdings kann ich den Code nicht bei mir umsetzen - muss ich ausser der &lt;vector&gt;-lib doch nichts einbinden oder?<br />
Jedenfalls nörgelt mein Compiler sobald ich die Parameter in den Klammern dazusetze (wie z.Bsp. v2**(4, v3)**). Lasse ich diese weg, gehts compilieren (aber hat natürlich keinen Schopf)</p>
<pre><code class="language-cpp">vector&lt;Tile *&gt; v3;
vector&lt; vector&lt;Tile *&gt; &gt; v2;
vector&lt; vector&lt; vector&lt;Tile *&gt; &gt; &gt; v;
</code></pre>
<p>Woran liegt das?</p>
<p>this-&gt;that schrieb:</p>
<blockquote>
<p>Da kannst auf dem Stack kein Array variabler Größe anlegen. Dazu müsstest du dynmisch speicher alloziieren mit new.</p>
</blockquote>
<p>genau, soweit war ich auch schon - allerdings hab ich das auch nich hinbekommen - könnte mal jmd ein Beispiel zeigen, wie ich das mit den hier verwendeten Variablen / Klassen <strong>syntaktisch korrekt</strong> realisiere?<br />
Mir schien es als würde der &quot;Typ&quot; den ich verwende (also &quot;Tile&quot;, bzw. &quot;Tile*&quot;) die Probleme bei new verursachen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1716940</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1716940</guid><dc:creator><![CDATA[dukems2112]]></dc:creator><pubDate>Wed, 27 May 2009 20:46:27 GMT</pubDate></item><item><title><![CDATA[Reply to Dreidimensionales Array mit Zeigern auf Klasseninstanzen - WIE GEHTS?! on Sun, 31 May 2009 22:07:02 GMT]]></title><description><![CDATA[<p>hm...keiner kann mir hierfür noch n tip geben? Das Thema is nach wie vor von direkter Relevanz für mich....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718850</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718850</guid><dc:creator><![CDATA[dukems2112]]></dc:creator><pubDate>Sun, 31 May 2009 22:07:02 GMT</pubDate></item><item><title><![CDATA[Reply to Dreidimensionales Array mit Zeigern auf Klasseninstanzen - WIE GEHTS?! on Sun, 31 May 2009 23:35:22 GMT]]></title><description><![CDATA[<p>poste mal die fehlermeldung, die dir dein compiler da gibt...</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1718872</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1718872</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Sun, 31 May 2009 23:35:22 GMT</pubDate></item></channel></rss>