<?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[Klassen, Arrays und Referenzen]]></title><description><![CDATA[<p>Hallo,<br />
ich bin recht neu in cpp unterwegs und versuche gerade eine Klasse für Vektorrechnung zu schreiben. Auf die x, y und z Werte des Vektors möchte ich sowohl über ein Array, als auch über die Referenzen x, y und z zugreifen.</p>
<p>Ich habe bereits Referenzen und Zeiger probiert zu verwenden.</p>
<pre><code class="language-cpp">class Vector {
	public:
		double 	xxvalues[3];
		double  &amp;x = xxvalues[0];
</code></pre>
<p>Es erscheint immer der Fehler:</p>
<pre><code>/Users/aa/Desktop/vector.cpp:9: error: 'Vector::xxvalues' cannot appear in a constant-expression
/Users/aa/Desktop/vector.cpp:9: error: an array reference cannot appear in a constant-expression
/Users/aa/Desktop/vector.cpp:9: error: ISO C++ forbids initialization of member 'x'
/Users/aa/Desktop/vector.cpp:9: error: making 'x' static
/Users/aa/Desktop/vector.cpp:9: error: invalid in-class initialization of static data member of non-integral type 'double&amp;'
</code></pre>
<p>Vielen Dank schon einmal.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/305389/klassen-arrays-und-referenzen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 08 Aug 2026 23:17:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/305389.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 27 Jun 2012 19:17:23 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klassen, Arrays und Referenzen on Wed, 27 Jun 2012 19:38:57 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich bin recht neu in cpp unterwegs und versuche gerade eine Klasse für Vektorrechnung zu schreiben. Auf die x, y und z Werte des Vektors möchte ich sowohl über ein Array, als auch über die Referenzen x, y und z zugreifen.</p>
<p>Ich habe bereits Referenzen und Zeiger probiert zu verwenden.</p>
<pre><code class="language-cpp">class Vector {
	public:
		double 	xxvalues[3];
		double  &amp;x = xxvalues[0];
</code></pre>
<p>Es erscheint immer der Fehler:</p>
<pre><code>/Users/aa/Desktop/vector.cpp:9: error: 'Vector::xxvalues' cannot appear in a constant-expression
/Users/aa/Desktop/vector.cpp:9: error: an array reference cannot appear in a constant-expression
/Users/aa/Desktop/vector.cpp:9: error: ISO C++ forbids initialization of member 'x'
/Users/aa/Desktop/vector.cpp:9: error: making 'x' static
/Users/aa/Desktop/vector.cpp:9: error: invalid in-class initialization of static data member of non-integral type 'double&amp;'
</code></pre>
<p>Vielen Dank schon einmal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2227896</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2227896</guid><dc:creator><![CDATA[mynamenixname]]></dc:creator><pubDate>Wed, 27 Jun 2012 19:38:57 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen, Arrays und Referenzen on Wed, 27 Jun 2012 19:34:52 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">double  &amp;x = xxvalues[0];
</code></pre>
<p>Kannst du in Klassendefinitionen so nicht schreiben. Initialisierungen werden mit einer gleichnamigen Initialisierungsliste im Konstruktor durchgeführt:</p>
<pre><code class="language-cpp">Vector()://Doppelpunkt leitet Initialisierungsliste ein
x(xxvalues[0]) 
{
   //....
</code></pre>
<p>Außerdem, für Vektor/Matrizen Rechnungen gibt es <code>std::valarray</code> &amp; co. aus der Standardbibliothek. Für Arrays könntest du auch STL-Container (hier bspw. <code>std::vector</code> ) verwenden. Geschwindigkeit zählt doch hier nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2227901</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2227901</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 27 Jun 2012 19:34:52 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen, Arrays und Referenzen on Wed, 27 Jun 2012 19:35:13 GMT]]></title><description><![CDATA[<p>Kompilier mit -std=c++11 bzw -std=c++0x.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2227904</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2227904</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Wed, 27 Jun 2012 19:35:13 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen, Arrays und Referenzen on Wed, 27 Jun 2012 19:45:35 GMT]]></title><description><![CDATA[<p>Kellerautomat schrieb:</p>
<blockquote>
<p>Kompilier mit -std=c++11 bzw -std=c++0x.</p>
</blockquote>
<p>Das feature ist mir bekannt, mein GCC (und ich bin mir sicher, sein Compiler ebenfalls) unterstützen non-static data member initializers (noch) nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2227908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2227908</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Wed, 27 Jun 2012 19:45:35 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen, Arrays und Referenzen on Wed, 27 Jun 2012 19:50:58 GMT]]></title><description><![CDATA[<p>Vielen Dank,<br />
das mit der angepassten Initialisierungsliste hat geholfen.</p>
<p>C++ ist halt doch kein Java <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2227913</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2227913</guid><dc:creator><![CDATA[mynamenixname]]></dc:creator><pubDate>Wed, 27 Jun 2012 19:50:58 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen, Arrays und Referenzen on Wed, 27 Jun 2012 20:03:11 GMT]]></title><description><![CDATA[<p>Zum Glück.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2227918</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2227918</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Wed, 27 Jun 2012 20:03:11 GMT</pubDate></item></channel></rss>