<?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[boost multidimensional array als Objektvar klappt nicht, als lokale var schon]]></title><description><![CDATA[<p>Mir fehlt ein wenig Übung darin.</p>
<p>Bei boost findet sich ein kleines Beispiel zur Nutzung von dem multidimensionalem Array<br />
<a href="http://www.boost.org/libs/multi_array/doc/user.html#sec_example" rel="nofollow">http://www.boost.org/libs/multi_array/doc/user.html#sec_example</a></p>
<pre><code class="language-cpp">typedef boost::multi_array&lt;double, 3&gt; array_type;
  typedef array_type::index index;
  array_type A(boost::extents[3][4][2]);
</code></pre>
<p>Klappt problemlos, wenn ich den in irgendeiner Methode meiner Klasse reinkopiere. Wenn ich aber versuche array_type A als Objektvariable in der Klasse zu deklarieren (also diese drei Zeilen code in der .h Datei im private Bereich), so bekomme ich immer die Fehlermeldung:</p>
<pre><code>Fehler	1	error C2061: Syntaxfehler: Bezeichner 'extents'
</code></pre>
<p>An den includes hab ich nichts geändert, sind genauso wie im Beispiel, wo der Code in einer Methode drin steht, ich weiß nicht, warum extents unbekannt ist, ich hab auch probiert die extend_gen.hpp extra zu inkludieren, aber kein Erfolg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/199815/boost-multidimensional-array-als-objektvar-klappt-nicht-als-lokale-var-schon</link><generator>RSS for Node</generator><lastBuildDate>Tue, 30 Jun 2026 10:10:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/199815.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 07 Dec 2007 12:40:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to boost multidimensional array als Objektvar klappt nicht, als lokale var schon on Fri, 07 Dec 2007 12:40:11 GMT]]></title><description><![CDATA[<p>Mir fehlt ein wenig Übung darin.</p>
<p>Bei boost findet sich ein kleines Beispiel zur Nutzung von dem multidimensionalem Array<br />
<a href="http://www.boost.org/libs/multi_array/doc/user.html#sec_example" rel="nofollow">http://www.boost.org/libs/multi_array/doc/user.html#sec_example</a></p>
<pre><code class="language-cpp">typedef boost::multi_array&lt;double, 3&gt; array_type;
  typedef array_type::index index;
  array_type A(boost::extents[3][4][2]);
</code></pre>
<p>Klappt problemlos, wenn ich den in irgendeiner Methode meiner Klasse reinkopiere. Wenn ich aber versuche array_type A als Objektvariable in der Klasse zu deklarieren (also diese drei Zeilen code in der .h Datei im private Bereich), so bekomme ich immer die Fehlermeldung:</p>
<pre><code>Fehler	1	error C2061: Syntaxfehler: Bezeichner 'extents'
</code></pre>
<p>An den includes hab ich nichts geändert, sind genauso wie im Beispiel, wo der Code in einer Methode drin steht, ich weiß nicht, warum extents unbekannt ist, ich hab auch probiert die extend_gen.hpp extra zu inkludieren, aber kein Erfolg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1416473</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1416473</guid><dc:creator><![CDATA[Fragment]]></dc:creator><pubDate>Fri, 07 Dec 2007 12:40:11 GMT</pubDate></item><item><title><![CDATA[Reply to boost multidimensional array als Objektvar klappt nicht, als lokale var schon on Fri, 07 Dec 2007 13:53:27 GMT]]></title><description><![CDATA[<p>De initialisierung (boost::extents...) musst du dann in der Initalisierungsliste eines Konstruktors machen.</p>
<p>Einfach mal googeln <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1416543</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1416543</guid><dc:creator><![CDATA[The-Kenny]]></dc:creator><pubDate>Fri, 07 Dec 2007 13:53:27 GMT</pubDate></item><item><title><![CDATA[Reply to boost multidimensional array als Objektvar klappt nicht, als lokale var schon on Fri, 07 Dec 2007 14:14:21 GMT]]></title><description><![CDATA[<p>Aber da weiß ich die größe noch nicht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1416556</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1416556</guid><dc:creator><![CDATA[Fragment]]></dc:creator><pubDate>Fri, 07 Dec 2007 14:14:21 GMT</pubDate></item><item><title><![CDATA[Reply to boost multidimensional array als Objektvar klappt nicht, als lokale var schon on Sat, 08 Dec 2007 15:11:15 GMT]]></title><description><![CDATA[<p>Hm, ich hab noch Probleme, zum beispiel muss ich beim Aufruf einer Methode ein sauberes multi array haben und versuche den Konstruktor nochmal neu aufzurufen, aber das endet in einer exception, die das System komplett killt.</p>
<p>Klassenvar sieht so aus:</p>
<pre><code class="language-cpp">// Array of map
	typedef boost::multi_array&lt;int, 2&gt; intArray;
  // Potential map
	intArray pMap;
</code></pre>
<p>Und eine Methode, die immer wieder aufgerufen wird, ruft immer</p>
<pre><code class="language-cpp">pMap = intArray(extents[n][m]);
</code></pre>
<p>Auf, die darf nicht lokal sein, weil sie noch wo anders gebraucht wird</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1417063</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1417063</guid><dc:creator><![CDATA[Fragment]]></dc:creator><pubDate>Sat, 08 Dec 2007 15:11:15 GMT</pubDate></item><item><title><![CDATA[Reply to boost multidimensional array als Objektvar klappt nicht, als lokale var schon on Mon, 10 Dec 2007 08:43:20 GMT]]></title><description><![CDATA[<p>Wozu gibt's denn Initialisierungslisten?</p>
<pre><code class="language-cpp">class test
{
  typedef boost::multi_array&lt;int, 2&gt; intArray;
  // Potential map
  intArray pMap;

public:
  test() : pMap(extents[n][m]) {}
...
};
</code></pre>
<p>Wenn du nachträglich die Größe des Arrays verändern willst, solltest du dir mal reshape() und resize() ansehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1417936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1417936</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 10 Dec 2007 08:43:20 GMT</pubDate></item><item><title><![CDATA[Reply to boost multidimensional array als Objektvar klappt nicht, als lokale var schon on Mon, 10 Dec 2007 09:19:30 GMT]]></title><description><![CDATA[<p>Ich sagte ja, ich weiß die Größe zu dem Zeitpunkt nicht, und im Moment hab ich resize verwendet</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1417955</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1417955</guid><dc:creator><![CDATA[Fragment]]></dc:creator><pubDate>Mon, 10 Dec 2007 09:19:30 GMT</pubDate></item><item><title><![CDATA[Reply to boost multidimensional array als Objektvar klappt nicht, als lokale var schon on Tue, 11 Dec 2007 11:33:45 GMT]]></title><description><![CDATA[<p>Du kannst Dir das multi_array-Objekt alternativ auch erst anfordern wenn Du es brauchst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1418667</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1418667</guid><dc:creator><![CDATA[Walli]]></dc:creator><pubDate>Tue, 11 Dec 2007 11:33:45 GMT</pubDate></item></channel></rss>