<?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[reference auf array initialisieren]]></title><description><![CDATA[<p>Hallo,</p>
<p>wie kann ich denn eine Referenz auf ein Array initialisieren, also z.B.</p>
<p>int (&amp;test)[2];</p>
<p>Das würde zum Fehler:<br />
Fehler: »test« als Referenz deklariert, aber nicht initialisiert</p>
<p>führen. Wie muss ich denn initialisieren? Im Konstruktor?</p>
<p>Vielen Dank,<br />
Gordon</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/220093/reference-auf-array-initialisieren</link><generator>RSS for Node</generator><lastBuildDate>Wed, 07 Oct 2026 11:58:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/220093.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 11 Aug 2008 20:45:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to reference auf array initialisieren on Mon, 11 Aug 2008 20:45:07 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>wie kann ich denn eine Referenz auf ein Array initialisieren, also z.B.</p>
<p>int (&amp;test)[2];</p>
<p>Das würde zum Fehler:<br />
Fehler: »test« als Referenz deklariert, aber nicht initialisiert</p>
<p>führen. Wie muss ich denn initialisieren? Im Konstruktor?</p>
<p>Vielen Dank,<br />
Gordon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1562941</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562941</guid><dc:creator><![CDATA[grobian]]></dc:creator><pubDate>Mon, 11 Aug 2008 20:45:07 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Mon, 11 Aug 2008 20:51:35 GMT]]></title><description><![CDATA[<p>Also ich persönlich finde ja das Arrays und Referenzen nicht zusammen gehören <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="😛"
    /><br />
Arrays und Pointer agieren wunderbar zusammen und sind gar nicht so schwer zu verstehen <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/1562946</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1562946</guid><dc:creator><![CDATA[Speedy_92]]></dc:creator><pubDate>Mon, 11 Aug 2008 20:51:35 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 06:35:24 GMT]]></title><description><![CDATA[<p>grobian schrieb:</p>
<blockquote>
<p>...wie kann ich denn eine Referenz auf ein Array initialisieren, also z.B.</p>
<p>int (&amp;test)[2];</p>
<p>...</p>
</blockquote>
<p>So wie alle Referenzen:</p>
<pre><code class="language-cpp">int arr[2] = {1, 2};
   int (&amp;refs)[2] = arr;
</code></pre>
<p>Referenzen müssen bereits bei ihrer &quot;Entstehung&quot; gebunden werden, d.h. bei einem Klassenmember in der Initialisierungsliste:</p>
<pre><code class="language-cpp">struct A {
   int (&amp;refs)[2];
   A(int (&amp;arr)[2]) : refs(arr) {}
};
</code></pre>
<p>Aaaaaaaber: Müssen es wirklich Arrays sein ? Warum kein STL-Container (vector, ....) ?</p>
<p>Speedy_92 schrieb:</p>
<blockquote>
<p>Also ich persönlich finde ja das Arrays und Referenzen nicht zusammen gehören <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="😛"
    /><br />
Arrays und Pointer agieren wunderbar zusammen und sind gar nicht so schwer zu verstehen <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>
</blockquote>
<p>Naja, er will ja kein Array von Referenzen (was IIRC nicht geht), sondern eine Referenz auf ein Array.... da spricht IMHO nichts gegen (obwohl ich Arrays zunehmend für verzichtbare Altlast halte).</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1563031</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563031</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 12 Aug 2008 06:35:24 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 06:52:41 GMT]]></title><description><![CDATA[<p>Referenzen als nichtstatische Klassenmember sind fast immer ein Fehlgriff.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1563045</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563045</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Tue, 12 Aug 2008 06:52:41 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 07:20:35 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p>Referenzen als nichtstatische Klassenmember sind fast immer ein Fehlgriff.</p>
</blockquote>
<p>Warum? Wenn ich eine Hilfsklasse hab, die jeweils genau 1 Hauptklassenelement bedient, find ich Referenzen sehr praktisch. Wuerd ich das mit einem Pointer machen wollen kann mir keiner garantieren, dass der nicht aus Versehen mal NULL ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1563059</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563059</guid><dc:creator><![CDATA[Blue-Tiger]]></dc:creator><pubDate>Tue, 12 Aug 2008 07:20:35 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 07:46:44 GMT]]></title><description><![CDATA[<p>Du hast Probleme beim Kopieren, falls notwendig. Und Referenzen können genauso ungültig werden wie Pointer, und in diesem Fall kannst du sie nicht mal auf NULL setzen um anzuzeigen, dass sie ungültig sind.</p>
<p>Wenn du das Lebenszeit-Problem im Griff hast und keine Zuweisung brauchst oder diese nicht definierbar wäre, mag es imho okay sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1563075</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563075</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Tue, 12 Aug 2008 07:46:44 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 08:18:37 GMT]]></title><description><![CDATA[<p>Blue-Tiger schrieb:</p>
<blockquote>
<p>camper schrieb:</p>
<blockquote>
<p>Referenzen als nichtstatische Klassenmember sind fast immer ein Fehlgriff.</p>
</blockquote>
<p>Warum? Wenn ich eine Hilfsklasse hab, die jeweils genau 1 Hauptklassenelement bedient, find ich Referenzen sehr praktisch. Wuerd ich das mit einem Pointer machen wollen kann mir keiner garantieren, dass der nicht aus Versehen mal NULL ist.</p>
</blockquote>
<p>Das Argument mit NULL hab ich noch nie verstanden - in irgendeinem Zusammenhang. Ob ich nun selbst festlege, dass in einem bestimmten Kontext ein Zeiger nicht NULL sein soll, oder der Standard das von vornherein tut, ist doch im Endeffekt völlig egal.<br />
Was ich meine ist aber, dass im Falle nichtstatischer Member eine Referenz keinerlei Vorteil gegenüber einem konstanten Zeiger hat (und ich bin sicher niemand, der Zeiger allgemein Referenzen vorzieht) - und meistens ist ja schon das const bei nichtstatischen Membern fehl am Platz (ich sehe es hier jedenfalls immer wieder, dass Member const definiert werden, obwohl diese Konstanz bloßer Reflex der Konstanz aller Objekte der Klasse ist). Man hat mit zusätzlichen Einschränkungen zu leben (keine Zeiger oder Referenzen auf die Referenz bzw. keine Zeiger auf Member) - das kann z.B. im Zusammenhang mit Standardalgorithmen unschön werden.<br />
Dann gibt es da ein Namensproblem, falls man zu den Leuten gehört, die die Membereigenschaft im Namen kenntlich machen (m_ _ etc.). Ist es logisch richtig, einer Referenz diesen Namenszusatz zu geben oder nicht?<br />
Schließlich verändert ja<br />
this-&gt;foo_ = x;<br />
das Objekt gerade nicht, wenn foo_ eine Referenz ist, die irgendwohin zeigt - womit die Zweckmäßigkeit des Namensschemas in Frage zu stellen wäre.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1563097</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563097</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Tue, 12 Aug 2008 08:18:37 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 08:19:12 GMT]]></title><description><![CDATA[<p>Hallo an alle,</p>
<p>danke für die Antworten.<br />
Kurz zur Erläuterung:<br />
Ich hatte auch schon Pointer auf Arrays verwendet, aber dann kommt im &quot;Runmodus&quot;<br />
&quot;Segmentation violation&quot;......deshalb wollte ich nur ausprobieren, ob es mit Referencen besser klappt....</p>
<p>Grüße,<br />
Gordon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1563098</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563098</guid><dc:creator><![CDATA[grobian]]></dc:creator><pubDate>Tue, 12 Aug 2008 08:19:12 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 08:24:34 GMT]]></title><description><![CDATA[<p>grobian schrieb:</p>
<blockquote>
<p>&quot;Segmentation violation&quot;......deshalb wollte ich nur ausprobieren, ob es mit Referencen besser klappt....</p>
</blockquote>
<p>Das sind häufig Speichezugriffsfehler durch Zugirffe über Arraygrenzen hinaus. versuchs mal mit vector, da ist es leichter, sowas zu verhinden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1563101</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563101</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 12 Aug 2008 08:24:34 GMT</pubDate></item><item><title><![CDATA[Reply to reference auf array initialisieren on Tue, 12 Aug 2008 08:27:06 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p>Ist es logisch richtig, einer Referenz diesen Namenszusatz zu geben oder nicht?<br />
Schließlich verändert ja<br />
this-&gt;foo_ = x;<br />
das Objekt gerade nicht, wenn foo_ eine Referenz ist, die irgendwohin zeigt - womit die Zweckmäßigkeit des Namensschemas in Frage zu stellen wäre.</p>
</blockquote>
<p>Interessanter Aspekt und guter Einwand. <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/1563105</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1563105</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Tue, 12 Aug 2008 08:27:06 GMT</pubDate></item></channel></rss>