<?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[Zeiger vs. Referenz]]></title><description><![CDATA[<p>Hallo liebe Wissende,</p>
<p>ich habe mal eine grundsätzliche Frage: Viele Programmierprobleme kann ich entweder durch den Einsatz von Zeigern oder alternativ mit Referenzen lösen. Gibt es Indikatoren, die mir anzeigen, wann ich was verwenden sollte? Allgemein heißt es ja Referenzen sind sicherer, aber sie behüten mich nicht vor &quot;bösem Code&quot;.</p>
<p>Klärt mich bitte auf: Wann setzt ihr Referenzen ein und wann sind Zeiger die bessere Wahl.</p>
<p>Dank und Grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/214997/zeiger-vs-referenz</link><generator>RSS for Node</generator><lastBuildDate>Tue, 13 Oct 2026 00:21:00 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/214997.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 05 Jun 2008 11:49:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 11:49:50 GMT]]></title><description><![CDATA[<p>Hallo liebe Wissende,</p>
<p>ich habe mal eine grundsätzliche Frage: Viele Programmierprobleme kann ich entweder durch den Einsatz von Zeigern oder alternativ mit Referenzen lösen. Gibt es Indikatoren, die mir anzeigen, wann ich was verwenden sollte? Allgemein heißt es ja Referenzen sind sicherer, aber sie behüten mich nicht vor &quot;bösem Code&quot;.</p>
<p>Klärt mich bitte auf: Wann setzt ihr Referenzen ein und wann sind Zeiger die bessere Wahl.</p>
<p>Dank und Grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523202</guid><dc:creator><![CDATA[filiborion]]></dc:creator><pubDate>Thu, 05 Jun 2008 11:49:50 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 11:54:22 GMT]]></title><description><![CDATA[<p>Ein Zeiger macht dann Sinn, wenn man z.B. eine Funktion auch mit einem NULL-Pointer aufrufen können will.<br />
Ansonsten sollte man Referenzen benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523212</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523212</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Thu, 05 Jun 2008 11:54:22 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 11:55:38 GMT]]></title><description><![CDATA[<p>Zu diesem Thema wird ewig diskutiert. Such doch mal mit google oder Sufu danach.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523213</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523213</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 05 Jun 2008 11:55:38 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 12:12:36 GMT]]></title><description><![CDATA[<p>Naja, die Frage sollt recht einfach beantwortet sein.</p>
<p>Zeiger wenn Du musst, referenz wenn du kannst <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
<p>Zeiger statt referenz brauchst du nur bei 2 Dingen,<br />
- NULL wert Indikator, ne Ref kann nie ungueltig sein !<br />
- Kompatiblitaet zu C schnittstellen ...</p>
<p>In mancher Literatur liest man , das man fuer polymorphie Zeiger braucht, weiss ned ob das frueher mal aktuell war, aber heutzutage geht das mit referenzen definitiv !</p>
<p>Ciao ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523232</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523232</guid><dc:creator><![CDATA[RHBaum]]></dc:creator><pubDate>Thu, 05 Jun 2008 12:12:36 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 12:33:12 GMT]]></title><description><![CDATA[<blockquote>
<p>ne Ref kann nie ungueltig sein !</p>
</blockquote>
<p>Doch. Ungültig schon, aber initialisiert werden muss die Ref. immer.<br />
Simon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523252</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523252</guid><dc:creator><![CDATA[simon.gysi]]></dc:creator><pubDate>Thu, 05 Jun 2008 12:33:12 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 13:15:02 GMT]]></title><description><![CDATA[<p>Eine ref *darf* AFAIK nie ungültig sein, *kann* aber natürlich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523302</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523302</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Thu, 05 Jun 2008 13:15:02 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 13:16:46 GMT]]></title><description><![CDATA[<p>Referenzen sind aber auch eine schöne Coderegel, um Referenzen zu verlangen:</p>
<pre><code class="language-cpp">class A
{
   X &amp;xref;
};
</code></pre>
<p>Der Compiler wird mir einen Error melden!</p>
<p>Lässt sich lösen:</p>
<pre><code class="language-cpp">class A
{
   X &amp;xref;

public:
   A(X &amp;x) : xref(x)
   {}
};
</code></pre>
<p>Alleine dadurch, das das Member eine Referenz ist, zwinge ich mich selber und auch Anwender meiner Klasse dazu, ein Objekt zu übergeben.</p>
<p>Bei einem Pointer wird mir der Compiler keinen Error melden:</p>
<pre><code class="language-cpp">class A
{
   X *xref;
};
</code></pre>
<p>Ist ja nur &quot;optional&quot; zu initialisieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523305</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523305</guid><dc:creator><![CDATA[HansiHinterseher]]></dc:creator><pubDate>Thu, 05 Jun 2008 13:16:46 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 13:24:21 GMT]]></title><description><![CDATA[<p>HansiHinterseher schrieb:</p>
<blockquote>
<p>Referenzen sind aber auch eine schöne Coderegel, um Referenzen zu verlangen:</p>
<pre><code class="language-cpp">class A
{
   X &amp;xref;
};
</code></pre>
<p>Der Compiler wird mir einen Error melden!</p>
<p>Lässt sich lösen:</p>
<pre><code class="language-cpp">class A
{
   X &amp;xref;

public:
   A(X &amp;x) : xref(x)
   {}
};
</code></pre>
<p>Alleine dadurch, das das Member eine Referenz ist, zwinge ich mich selber und auch Anwender meiner Klasse dazu, ein Objekt zu übergeben.</p>
<p>Bei einem Pointer wird mir der Compiler keinen Error melden:</p>
<pre><code class="language-cpp">class A
{
   X *xref;
};
</code></pre>
<p>Ist ja nur &quot;optional&quot; zu initialisieren.</p>
</blockquote>
<p>Häh? Wenn Du folgendes hast:</p>
<pre><code class="language-cpp">struct A
{
    A(const B&amp; obj);
};
</code></pre>
<p>zwingst Du den Benutzer auch dazu, ein Objekt zu übergeben.<br />
Selbst</p>
<pre><code class="language-cpp">struct A
{
    A(B obj);
};
</code></pre>
<p>zwingt ihn dazu. Es darf nur keinen Default-Ctor geben. Die Referenz als Attribut ist überflüssig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523318</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523318</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Thu, 05 Jun 2008 13:24:21 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 13:35:37 GMT]]></title><description><![CDATA[<p>Tachyon, mit deinen beiden Versionen kannst du &quot;xref&quot; aber schlecht initialisieren. Bei der zweiten Version würde &quot;xref&quot;, wenn du es mit &quot;obj&quot; initialisierst, auf einen Parameter zeigen, der direkt danach vom Stack ist, die Referenz also ungültig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523330</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523330</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Thu, 05 Jun 2008 13:35:37 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 13:42:04 GMT]]></title><description><![CDATA[<p>Badestrand schrieb:</p>
<blockquote>
<p>Tachyon, mit deinen beiden Versionen kannst du &quot;xref&quot; aber schlecht initialisieren. Bei der zweiten Version würde &quot;xref&quot;, wenn du es mit &quot;obj&quot; initialisierst, auf einen Parameter zeigen, der direkt danach vom Stack ist, die Referenz also ungültig.</p>
</blockquote>
<p>Sein Post ging doch darum, die Übergabe eines Objekts zu erzwingen. Bei mir gibt es gar kein xref. Ist zum Erzwingen einer Objektübergabe auch nicht notwendig.<br />
Und der einleitende Satz: &quot;Referenzen sind aber auch eine schöne Coderegel, um Referenzen zu verlangen&quot; ist ohnehin selbstbestätigend.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523339</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523339</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Thu, 05 Jun 2008 13:42:04 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 16:45:57 GMT]]></title><description><![CDATA[<p>Badestrand hat verstanden was ich sagen wollte. Dein Beispiel passt zu meinem garnicht. Wo ist denn deine Member-Referenz?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523513</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523513</guid><dc:creator><![CDATA[HansiHinterseher]]></dc:creator><pubDate>Thu, 05 Jun 2008 16:45:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 20:30:05 GMT]]></title><description><![CDATA[<p>Wichtig sei vielleicht noch erwähnt, dass man Zeiger braucht, um in Listen einzufügen. Das funktioniert mit Referenzen nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523681</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523681</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 05 Jun 2008 20:30:05 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 20:37:13 GMT]]></title><description><![CDATA[<p>drakon schrieb:</p>
<blockquote>
<p>Wichtig sei vielleicht noch erwähnt, dass man Zeiger braucht, um in Listen einzufügen. Das funktioniert mit Referenzen nicht.</p>
</blockquote>
<p>Die Wichtigkeit kann ich nicht erkennen, nicht einmal, was du eigentlich ausdrücken willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523684</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523684</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 05 Jun 2008 20:37:13 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger vs. Referenz on Thu, 05 Jun 2008 20:42:18 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p>drakon schrieb:</p>
<blockquote>
<p>Wichtig sei vielleicht noch erwähnt, dass man Zeiger braucht, um in Listen einzufügen. Das funktioniert mit Referenzen nicht.</p>
</blockquote>
<p>Die Wichtigkeit kann ich nicht erkennen, nicht einmal, was du eigentlich ausdrücken willst.</p>
</blockquote>
<p>Man könnte auf die Idee kommen eine Liste von Referenzen zu erstellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1523689</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1523689</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 05 Jun 2008 20:42:18 GMT</pubDate></item></channel></rss>