<?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[[Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein Problem bei der Kurzschreibweise zur Initialisierung eines Arrays.</p>
<pre><code class="language-cpp">int theArray[] = {1,2,3};
</code></pre>
<p>Das funktioniert soweit ganz gut.</p>
<p>Nun wollte ich das Array als Membervariable einer Klasse benutzen und habe die Klasse in eine *.h und eine *.cpp Datei aufgeteilt.</p>
<p>Gibt es dann noch eine Möglichkeit das Array mit der Kurzschreibweise zu initialisieren?</p>
<p>Ich habe ein kleines Beispiel aufgesetzt, das das Problem zeigt.</p>
<p><strong>MyArray.h</strong></p>
<pre><code class="language-cpp">#ifndef MYARRAY_H_
#define MYARRAY_H_

class MyArray
{
private:
	int* theArray;

public:
	MyArray();
};

#endif /* MYARRAY_H_ */
</code></pre>
<p><strong>MyArray.cpp</strong></p>
<pre><code class="language-cpp">#include &quot;MyArray.h&quot;

MyArray::MyArray()
{
	this-&gt;theArray = {1,2,3,4};
}
</code></pre>
<blockquote>
<p>cannot convert ‘&lt;brace-enclosed initializer list&gt;’ to ‘int*’ in assignment MyArray.cpp</p>
</blockquote>
<p>Ich würde das Array gerne in der Kurzschreibweise initialisieren, da es sich eigentlich um ein 2 dimensionales 8x8 Array mit enum Werten handeln sollte und die Lesbarkeit bei der Kurzschreibweise wahrscheinlich besser ist.</p>
<p>Ursprüngliches Problem ist die Initialisierung des Spielfelds für Kamisado (<a href="http://de.wikipedia.org/w/index.php?title=Datei:Kamisado-board1.jpg&amp;filetimestamp=20101231112829" rel="nofollow">http://de.wikipedia.org/w/index.php?title=Datei:Kamisado-board1.jpg&amp;filetimestamp=20101231112829</a>), das ich mir als Lernprojekt ausgesucht habe</p>
<p>Gruß<br />
Constantin</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/282246/anfängerfrage-kurzschreibweise-zur-initialisierung-eines-arrays</link><generator>RSS for Node</generator><lastBuildDate>Sun, 23 Aug 2026 07:17:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/282246.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 16 Feb 2011 15:25:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 15:25:26 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein Problem bei der Kurzschreibweise zur Initialisierung eines Arrays.</p>
<pre><code class="language-cpp">int theArray[] = {1,2,3};
</code></pre>
<p>Das funktioniert soweit ganz gut.</p>
<p>Nun wollte ich das Array als Membervariable einer Klasse benutzen und habe die Klasse in eine *.h und eine *.cpp Datei aufgeteilt.</p>
<p>Gibt es dann noch eine Möglichkeit das Array mit der Kurzschreibweise zu initialisieren?</p>
<p>Ich habe ein kleines Beispiel aufgesetzt, das das Problem zeigt.</p>
<p><strong>MyArray.h</strong></p>
<pre><code class="language-cpp">#ifndef MYARRAY_H_
#define MYARRAY_H_

class MyArray
{
private:
	int* theArray;

public:
	MyArray();
};

#endif /* MYARRAY_H_ */
</code></pre>
<p><strong>MyArray.cpp</strong></p>
<pre><code class="language-cpp">#include &quot;MyArray.h&quot;

MyArray::MyArray()
{
	this-&gt;theArray = {1,2,3,4};
}
</code></pre>
<blockquote>
<p>cannot convert ‘&lt;brace-enclosed initializer list&gt;’ to ‘int*’ in assignment MyArray.cpp</p>
</blockquote>
<p>Ich würde das Array gerne in der Kurzschreibweise initialisieren, da es sich eigentlich um ein 2 dimensionales 8x8 Array mit enum Werten handeln sollte und die Lesbarkeit bei der Kurzschreibweise wahrscheinlich besser ist.</p>
<p>Ursprüngliches Problem ist die Initialisierung des Spielfelds für Kamisado (<a href="http://de.wikipedia.org/w/index.php?title=Datei:Kamisado-board1.jpg&amp;filetimestamp=20101231112829" rel="nofollow">http://de.wikipedia.org/w/index.php?title=Datei:Kamisado-board1.jpg&amp;filetimestamp=20101231112829</a>), das ich mir als Lernprojekt ausgesucht habe</p>
<p>Gruß<br />
Constantin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2021875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2021875</guid><dc:creator><![CDATA[Papillon]]></dc:creator><pubDate>Wed, 16 Feb 2011 15:25:26 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 15:28:36 GMT]]></title><description><![CDATA[<p>Constantin Noll schrieb:</p>
<blockquote>
<p>Gibt es dann noch eine Möglichkeit das Array mit der Kurzschreibweise zu initialisieren?</p>
</blockquote>
<p>Nein, sei denn, das Array ist ein statischer Member. Nebenbei bemerkt ist ein Zeiger sowieso kein Array.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2021876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2021876</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Wed, 16 Feb 2011 15:28:36 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 15:58:51 GMT]]></title><description><![CDATA[<p>Danke für die schnelle Antwort.<br />
Dann muß ich wohl damit leben <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>
<p>camper schrieb:</p>
<blockquote>
<p>Nebenbei bemerkt ist ein Zeiger sowieso kein Array.</p>
</blockquote>
<p>Ich habe bisher in meinen Büchern keinen Hinweis darauf gefunden, dass sich die beiden Deklarationen unterscheiden würden:</p>
<pre><code class="language-cpp">int* a;
int b[];
</code></pre>
<p>Wo liegt denn der Unterschied?</p>
<p>Gruß<br />
Constantin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2021899</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2021899</guid><dc:creator><![CDATA[Papillon]]></dc:creator><pubDate>Wed, 16 Feb 2011 15:58:51 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 16:05:02 GMT]]></title><description><![CDATA[<p>Constantin Noll schrieb:</p>
<blockquote>
<p>Ich habe bisher in meinen Büchern keinen Hinweis darauf gefunden, dass sich die beiden Deklarationen unterscheiden würden:</p>
<pre><code class="language-cpp">int* a;
int b[];
</code></pre>
<p>Wo liegt denn der Unterschied?</p>
</blockquote>
<p>Das eine definiert einen Zeiger, dass andere ein Array mit unbestimmten Grenzen (was für sich allein genommen nicht zulässig ist).<br />
Ein Array ist ein Objekt, dass eine bestimmte Anzahl gleichartiger Subobjekte enthält.<br />
Ein Zeigerobjekt ist ein Objekt, dessen Wert dazu benutzt werden kann, auf andere Objekte zu verweisen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2021902</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2021902</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Wed, 16 Feb 2011 16:05:02 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 16:16:27 GMT]]></title><description><![CDATA[<p>Danke für die Antwort.<br />
Ich schaue mir das nochmal genauer an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2021908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2021908</guid><dc:creator><![CDATA[Papillon]]></dc:creator><pubDate>Wed, 16 Feb 2011 16:16:27 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 17:17:40 GMT]]></title><description><![CDATA[<p>Vielleicht entsteht die Verwirrung, weil <code>int* a</code> und <code>int a[]</code> <strong>in Parameterlisten</strong> tatsächlich äquivalent sind und beide einen Zeiger deklarieren (Arrays kann man nicht an Funktionen übergeben). Ansonsten gilt das aber nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2021934</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2021934</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Wed, 16 Feb 2011 17:17:40 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 19:32:21 GMT]]></title><description><![CDATA[<p>Ich habe den Codeschnipsel gefunden, der bei mir den Eindruck erweckte, dass a und b das gleiche seien:</p>
<p>C++ von A-Z S.166 | ISBN: 978-3-8362-1429-2 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">//...
int iarray[] = {11,22,33};

// iptr zeigt auf das erste Element von iarray
int* iptr = iarray;

for ( unsigned int i = 0; i &lt; sizeof(iarray) / sizeof(iarray[0]); i++ )
{
    cout &lt;&lt; *iptr &lt;&lt; '\n';
    iptr++;
}
//...
</code></pre>
</blockquote>
<p>Der Hinweis mit der Parameterliste erklärt dann auch den Unterschied, weil bei der Übergabe als Pointer dann z.B. die sizeof Information verloren geht und man die Array-Größe mit übergeben muß.</p>
<p>Ich denke ich habs jetzt. Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2021975</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2021975</guid><dc:creator><![CDATA[Papillon]]></dc:creator><pubDate>Wed, 16 Feb 2011 19:32:21 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 20:25:39 GMT]]></title><description><![CDATA[<p>Constantin Noll schrieb:</p>
<blockquote>
<p>C++ von A-Z</p>
</blockquote>
<p>Das Buch ist bei uns alles andere als beliebt. Schau dir dazu vielleicht mal <a href="http://www.c-plusplus.net/forum/272350" rel="nofollow">diesen Thread</a> an...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2022004</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2022004</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Wed, 16 Feb 2011 20:25:39 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 22:15:04 GMT]]></title><description><![CDATA[<p>Ich lese mir den Thred jetzt mal nicht ganz durch.<br />
Das ist ja ein brennendes Thema.</p>
<p>Aber ich sehe das Buch auch nicht als Experten Referenz an.<br />
Wenn ich mich in eine Programmiersprache einarbeite 'verheize' ich gerne das erste Buch und lese es nur durch. Ich weiß genau, daß ich das Buch nicht ein zweites mal lesen werde. Und dafür sind die Bücher von Galileo Computing generell gut geeignet.</p>
<p>Der Code, aus dem Buch, den ich gepostet habe, ist ja erstmal nicht falsch.<br />
Es ist natürlich schade, wenn die Energie eines Forums verschwendet wird, um wiederholt Probleme auszumerzen, die durch ein bestimmtes Buch entstehen.</p>
<p>Auf meinen Plan liegt als nächstes:<br />
* Einführung in die Programmierung mit C++<br />
* Die C++ Programmiersprache</p>
<p>Ich hoffe das liegt mehr im Trend des Forums.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2022036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2022036</guid><dc:creator><![CDATA[Papillon]]></dc:creator><pubDate>Wed, 16 Feb 2011 22:15:04 GMT</pubDate></item><item><title><![CDATA[Reply to [Anfängerfrage] Kurzschreibweise zur Initialisierung eines Arrays on Wed, 16 Feb 2011 22:00:03 GMT]]></title><description><![CDATA[<p>Constantin Noll schrieb:</p>
<blockquote>
<p>* Die C++ Programmiersprache</p>
</blockquote>
<p>Struppi ftw <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2022040</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2022040</guid><dc:creator><![CDATA[Bjarne]]></dc:creator><pubDate>Wed, 16 Feb 2011 22:00:03 GMT</pubDate></item></channel></rss>