<?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[Pointer oder Referenzen bei Übergabeparameter?]]></title><description><![CDATA[<p>Was ist in C++ im allgemeinen eigentlich üblicher bei der Übergabe einer Variablen vom Typ einer Klasse: Die Übergabe per Referenz oder per Pointer?</p>
<pre><code class="language-cpp">void function (const AnyClass &amp; classobject); //So?
</code></pre>
<pre><code class="language-cpp">void function (const AnyClass * classobject); //Oder so?
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/155620/pointer-oder-referenzen-bei-übergabeparameter</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 17:10:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/155620.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 08 Aug 2006 05:48:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 05:48:38 GMT]]></title><description><![CDATA[<p>Was ist in C++ im allgemeinen eigentlich üblicher bei der Übergabe einer Variablen vom Typ einer Klasse: Die Übergabe per Referenz oder per Pointer?</p>
<pre><code class="language-cpp">void function (const AnyClass &amp; classobject); //So?
</code></pre>
<pre><code class="language-cpp">void function (const AnyClass * classobject); //Oder so?
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1112674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112674</guid><dc:creator><![CDATA[PointRef]]></dc:creator><pubDate>Tue, 08 Aug 2006 05:48:38 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 06:02:53 GMT]]></title><description><![CDATA[<p>PointRef schrieb:</p>
<blockquote>
<p>Was ist in C++ im allgemeinen eigentlich üblicher bei der Übergabe einer Variablen vom Typ einer Klasse: Die Übergabe per Referenz oder per Pointer?</p>
<pre><code class="language-cpp">void function (const AnyClass &amp; classobject); //So?
</code></pre>
<pre><code class="language-cpp">void function (const AnyClass * classobject); //Oder so?
</code></pre>
</blockquote>
<p>bei const immer referenz.<br />
bei nonconst scheiden sich die geister. da nehme ich zeiger. es gibt aber viele, die meinen, referenzen seien irgendwie sicherer oder besser (zu viel java gegessen!) und nehmen referenzen wannimmer gerade noch erlaubt. läßt sich bei nonconst nicht klären, was besser ist, weil es zu selten vorkommt. gute funktionen haben nämlich das zu ändernde objekt als subjekt, also als *this übergeben, weswegen die nonconst-übergabe praktisch nicht vorkommt und die stilfrage hier mangels sinnvoller untersuchbarer codefragmente nicht entscheidbar ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112679</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112679</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 08 Aug 2006 06:02:53 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 06:38:26 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>bei const immer referenz.</p>
</blockquote>
<p>Wieso ist das so? In welchem Zusammenhang steht die Frage nach const oder nicht-const mit der Frage nach Referenz oder Pointer?</p>
<p>Zur Idee, dass Referenzen besser wären: Man muss sie zumindest nicht auf Gültigkeit (if (reference)) überprüfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112694</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112694</guid><dc:creator><![CDATA[PointRef]]></dc:creator><pubDate>Tue, 08 Aug 2006 06:38:26 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 06:41:34 GMT]]></title><description><![CDATA[<p>Reicht doch schon oder? Du kannst kein <em>NULL</em> Objekt übergeben. Damit kannst du dir etliche Abfragen und Fehlerquellen sparen.</p>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112696</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112696</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Tue, 08 Aug 2006 06:41:34 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 06:47:02 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Also ich mach es auch wie Volkard, weil ich bei Funktion, die ein Parameter ändert dann immer &amp; davorschreiben muss und somit gearnt bin: Aha, die Funktion ändert den Parameter. Bei const brauch ich aber nicht zu wissen, was in der Funktion passiert und ich nutze deswegen Referenzen.</p>
<p>chrische</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112701</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 08 Aug 2006 06:47:02 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 06:57:12 GMT]]></title><description><![CDATA[<p>Wenn du allerdings generell mit Pointern arbeitest (die du mit new angelegt hast) ist es aber genau umgekehrt. Da kannst du bei einer Übergabe per Pointer den Namen direkt schreiben, während du bei einer Übergabe per Referenz *wert schreiben musst.</p>
<p>Ich habe übrigens eine Möglichkeit gefunden, wo Referenzen durchaus ungültig sein können:</p>
<pre><code class="language-cpp">void f (int &amp;i);

int main ()
{
    int *i=NULL;

    f (*i); //Laufzeitfehler!
}
</code></pre>
<p>Dcoch ich würde nochmal gern die Begründung von volkard hören, wieso bei konstanten Parametern immer Referenzen zu nehmen sind, während das bei nicht konstanten Parametern an sich Geschmackssache ist. Ist es so, wie chrische5 gesagt hat, dass man dann durch das &amp; daran erinnert wird, dass die Funktion vielleicht etwas ändert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112707</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112707</guid><dc:creator><![CDATA[PointRef]]></dc:creator><pubDate>Tue, 08 Aug 2006 06:57:12 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 06:58:58 GMT]]></title><description><![CDATA[<p>Gibt es keine Referenzbeispiele (pun not intended) aus dem C++-Standard?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112710</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112710</guid><dc:creator><![CDATA[PointRef]]></dc:creator><pubDate>Tue, 08 Aug 2006 06:58:58 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 09:51:15 GMT]]></title><description><![CDATA[<p>Ich persönlich übergebe Objekte immer dann als Referenz, wenn sie existieren müssen, d.h. keine Nullzeiger erlaubt sind. Mit const/nicht-const hat das allerdings gar nichts zu tun. Man kann durchaus Zeiger auf konstante Objekte brauchen, z.B. für optionale Parameter als Alternative zu einer Funktionsüberladung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112802</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112802</guid><dc:creator><![CDATA[Neku]]></dc:creator><pubDate>Tue, 08 Aug 2006 09:51:15 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 10:00:34 GMT]]></title><description><![CDATA[<p>chrische5 schrieb:</p>
<blockquote>
<p>... weil ich bei Funktion, die ein Parameter ändert dann immer &amp; davorschreiben muss und somit gearnt bin: Aha, die Funktion ändert den Parameter.</p>
</blockquote>
<p>Ich kann diesen Grund nicht nachvollziehen. Ich bin der Ansicht: Wenn man eine Funktion aufruft, dann sollte man sowieso unbedingt wissen, was sie tut. Und wenn man das weiß, dann weiß man auch, ob sie Parameter verändert. Diese Warnsymbol-Argumentation (gibt es ja auch in anderen Bereichen, z.B. diese Regel, SYMBOLISCHE_KONSTANTEN groß zu schreiben) kann ich daher generell nicht nachvollziehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112812</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Tue, 08 Aug 2006 10:00:34 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 10:26:00 GMT]]></title><description><![CDATA[<p>chrische5 schrieb:</p>
<blockquote>
<p>Also ich mach es auch wie Volkard, weil ich bei Funktion, die ein Parameter ändert dann immer &amp; davorschreiben muss und somit gearnt bin: Aha, die Funktion ändert den Parameter.</p>
</blockquote>
<p>Darum gibt es ja das kleine aber feine Schlüsselwort &quot;const&quot; <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="😉"
    /> Wenn ein &quot;const&quot; vor dem Parameter steht, wird dieser nicht verändert - kann man ja auch gar nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112830</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112830</guid><dc:creator><![CDATA[Neku]]></dc:creator><pubDate>Tue, 08 Aug 2006 10:26:00 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 10:28:18 GMT]]></title><description><![CDATA[<p>Zu dem Beispiel mit der ungültigen Referenz<br />
Die gülitgkeit von Parametern wird bei Referenzen vom Aufrufer erledigt und bei einem Pointer Parameter von der Funktion.</p>
<p>Nur so meine Faustregel</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112832</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112832</guid><dc:creator><![CDATA[templäd]]></dc:creator><pubDate>Tue, 08 Aug 2006 10:28:18 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 10:31:04 GMT]]></title><description><![CDATA[<p>PointRef schrieb:</p>
<blockquote>
<p>volkard schrieb:</p>
<blockquote>
<p>bei const immer referenz.</p>
</blockquote>
<p>Wieso ist das so? In welchem Zusammenhang steht die Frage nach const oder nicht-const mit der Frage nach Referenz oder Pointer?</p>
</blockquote>
<p>ich hab keinen unterschied zwischen print(student)//by val und print(strudent)//by const ref.</p>
<blockquote>
<p>Zur Idee, dass Referenzen besser wären: Man muss sie zumindest nicht auf Gültigkeit (if (reference)) überprüfen.</p>
</blockquote>
<p>das halte ich für veraltet. zugriffe auf nullzeiger passieren nicht und dagegen prüfen ist zeitverschwendung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112837</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 08 Aug 2006 10:31:04 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 10:33:36 GMT]]></title><description><![CDATA[<p>templäd schrieb:</p>
<blockquote>
<p>und bei einem Pointer Parameter von der Funktion.</p>
</blockquote>
<p>wozu das denn? lass die kiste doch abschmieren, wenn du strlen(0) berechnen willst. und überhaupt, was sollte denn das ergebnis sein? -1? und was willste bei strcpy(0,&quot;hallo&quot;) machen? nix? dann wir der nachste, der die 0 benutzt, das roblem haben. lass den rechner ruhig in die schutzverletzung laufen und gut ist's.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112838</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112838</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 08 Aug 2006 10:33:36 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 11:06:24 GMT]]></title><description><![CDATA[<p>Meiner Meinung nach tritt das Problem ja nur bei Operator Überladung auf.<br />
Eine &quot;gute&quot; Funktion/Methode sollte nicht einen Übergabeparameter verändern dürfen. Ergebnisse sollten nur mit return zurückgegeben werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112846</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Tue, 08 Aug 2006 11:06:24 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 11:27:30 GMT]]></title><description><![CDATA[<p>1310-Logik schrieb:</p>
<blockquote>
<p>Meiner Meinung nach tritt das Problem ja nur bei Operator Überladung auf.</p>
</blockquote>
<p>bei operatoren ist aber wiederum sonnenklar,m ob zeiger oder referenz.</p>
<blockquote>
<p>Eine &quot;gute&quot; Funktion/Methode sollte nicht einen Übergabeparameter verändern dürfen. Ergebnisse sollten nur mit return zurückgegeben werden.</p>
</blockquote>
<p>jo. und zweimal im jahr findet sich ne unwichtige ausnahme.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112860</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112860</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 08 Aug 2006 11:27:30 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 11:31:50 GMT]]></title><description><![CDATA[<p>Neku schrieb:</p>
<blockquote>
<p>chrische5 schrieb:</p>
<blockquote>
<p>Also ich mach es auch wie Volkard, weil ich bei Funktion, die ein Parameter ändert dann immer &amp; davorschreiben muss und somit gearnt bin: Aha, die Funktion ändert den Parameter.</p>
</blockquote>
<p>Darum gibt es ja das kleine aber feine Schlüsselwort &quot;const&quot; <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="😉"
    /> Wenn ein &quot;const&quot; vor dem Parameter steht, wird dieser nicht verändert - kann man ja auch gar nicht.</p>
</blockquote>
<p>Wäre ich paranoid oder bösartig, könnte ich das const mit const_cast einfach wegcasten und fröhlich das Objekt verändern :p <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/1112863</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112863</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Tue, 08 Aug 2006 11:31:50 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 11:34:31 GMT]]></title><description><![CDATA[<p>GPC schrieb:</p>
<blockquote>
<p>Neku schrieb:</p>
<blockquote>
<p>chrische5 schrieb:</p>
<blockquote>
<p>Also ich mach es auch wie Volkard, weil ich bei Funktion, die ein Parameter ändert dann immer &amp; davorschreiben muss und somit gearnt bin: Aha, die Funktion ändert den Parameter.</p>
</blockquote>
<p>Darum gibt es ja das kleine aber feine Schlüsselwort &quot;const&quot; <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="😉"
    /> Wenn ein &quot;const&quot; vor dem Parameter steht, wird dieser nicht verändert - kann man ja auch gar nicht.</p>
</blockquote>
<p>Wäre ich paranoid oder bösartig, könnte ich das const mit const_cast einfach wegcasten und fröhlich das Objekt verändern :p <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>Wieso braucht eine Programmiersprache eigentlich ne &quot;Kindersicherung&quot;? Man sollte meinen, es seien Vernünftige Menschen am Werk.. :p <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/1112865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112865</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Tue, 08 Aug 2006 11:34:31 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 11:56:34 GMT]]></title><description><![CDATA[<p>Ich halt es so:</p>
<p>Referenzen da wo geht,<br />
Pointer da wo man referenzen nicht nutzen kann.</p>
<p>Faelle wo Referenzen nicht so geeignet sind:</p>
<p>- wenn man nen explizieten nicht definiert / nicht gueltig Wert braucht ... (NULL Pointer)<br />
- Wenn ich extensiv caste. Geht zwar prinizipiell auch mit referenzen, aber gefuehlsmaessig nehm ich da doch lieber pointer. (denk mal haengt eher damit zusammen das man bei nem logischen cast gern mal nen ungueltigkeitswert haett, also eher siehe punkt 1)<br />
- referenzen kann man ned in standardcontainer pappen ... da muss man pointer nehmen ....</p>
<p>Ciao ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112886</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112886</guid><dc:creator><![CDATA[RHBaum]]></dc:creator><pubDate>Tue, 08 Aug 2006 11:56:34 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 11:58:55 GMT]]></title><description><![CDATA[<p>Wo ich keinen Weg mit Referenzen sehe: bei der Behandlung polymorpher Objekte</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112890</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112890</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Tue, 08 Aug 2006 11:58:55 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 12:21:31 GMT]]></title><description><![CDATA[<p>1310-Logik schrieb:</p>
<blockquote>
<p>Eine &quot;gute&quot; Funktion/Methode sollte nicht einen Übergabeparameter verändern dürfen. Ergebnisse sollten nur mit return zurückgegeben werden.</p>
</blockquote>
<p>Das halte ich für nicht konsequent umsetzbar. Was machst Du, wenn eine Methode mehrere Parameter ändern muss?</p>
<p>Ich halte es so, wie viele bereits gesagt haben:<br />
- wenn nichts geändert wird: const-Referenz<br />
- wenn nichts geändert wird, aber eine Referenz nicht geht, aus welchem Grund auch immer: const-Pointer auf const-Daten<br />
- wenn geändert wird: Referenz<br />
- wenn geändert wird, aber Referenz nicht geht, aus welchem Grund auch immer: Pointer (wobei da noch zu überlegen ist, ob der Pointer const deklariert wird und nur die Daten nicht const sind)</p>
<p>Wobei ich alle Fälle schon einsetzen musste.</p>
<p>1310-Logik schrieb:</p>
<blockquote>
<p>Wieso braucht eine Programmiersprache eigentlich ne &quot;Kindersicherung&quot;? Man sollte meinen, es seien Vernünftige Menschen am Werk..</p>
</blockquote>
<p>Ich sehe das const eher als eine Hilfestellung, die dem Benutzer einer Methode sagt, diese Parameter werden von der Funktion geändert und diese eben nicht. Umgehen kann man alles, auch an eine private-deklarierte Klassenvariable kommt man von außen heran, wenn man will.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112917</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112917</guid><dc:creator><![CDATA[Cosmixx]]></dc:creator><pubDate>Tue, 08 Aug 2006 12:21:31 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 12:29:56 GMT]]></title><description><![CDATA[<p>Cosmixx schrieb:</p>
<blockquote>
<p>1310-Logik schrieb:</p>
<blockquote>
<p>Eine &quot;gute&quot; Funktion/Methode sollte nicht einen Übergabeparameter verändern dürfen. Ergebnisse sollten nur mit return zurückgegeben werden.</p>
</blockquote>
<p>Das halte ich für nicht konsequent umsetzbar. Was machst Du, wenn eine Methode mehrere Parameter ändern muss?</p>
</blockquote>
<p>Ein Tupel zurückgeben. Gut, in C++ ist das mit einer nicht sehr schönen Syntax verbunden. In anderen Sprachen (wohl hauptsächlich funktionalen) ist es aber gang und gäbe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112926</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Tue, 08 Aug 2006 12:29:56 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 12:34:58 GMT]]></title><description><![CDATA[<p>1310-Logik schrieb:</p>
<blockquote>
<p>Wo ich keinen Weg mit Referenzen sehe: bei der Behandlung polymorpher Objekte</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Nochmal zur Erinnerung, zum Speichern sind Referenzen sowieso nicht gemacht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112931</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112931</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Tue, 08 Aug 2006 12:34:58 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 12:46:09 GMT]]></title><description><![CDATA[<p>.filmor schrieb:</p>
<blockquote>
<p>1310-Logik schrieb:</p>
<blockquote>
<p>Wo ich keinen Weg mit Referenzen sehe: bei der Behandlung polymorpher Objekte</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Nochmal zur Erinnerung, zum Speichern sind Referenzen sowieso nicht gemacht.</p>
</blockquote>
<p>Ich meinte zB beim Observer Pattern. Wie willst du da ne Referenz übergeben?</p>
<pre><code class="language-cpp">virtual void update( Subject* subject )
{
    Foo* foo = dynamic_cast&lt; Foo* &gt;( subject );  //Foo ist abgeleitet von Subject (Abstrakte Klasse)
    foo-&gt;doBar();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1112946</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112946</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Tue, 08 Aug 2006 12:46:09 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 12:54:27 GMT]]></title><description><![CDATA[<p>Mit dem dynamic_cast setzt du dich ja auch eigentlich über das Konzept der Polymorphie hinweg, normale virtuelle Methoden funktionieren mit Referenzen ohne Probleme.</p>
<p>Btw, so gehts auch mit Referenzen:</p>
<pre><code class="language-cpp">virtual void update( Subject&amp; subject )
{
    Foo* foo = dynamic_cast&lt; Foo* &gt;( &amp;subject );
    foo-&gt;doBar();
}
</code></pre>
<p><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/1112958</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112958</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Tue, 08 Aug 2006 12:54:27 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 12:56:51 GMT]]></title><description><![CDATA[<p>Ja, aber doBar() ist eine Methode von Foo, nicht von Subject, also muss ich ja casten.<br />
So sieht doch die &quot;offizielle&quot; Implementierung vom Observer aus?<br />
Warum denn nun Referenzen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112962</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112962</guid><dc:creator><![CDATA[THX 1138]]></dc:creator><pubDate>Tue, 08 Aug 2006 12:56:51 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer oder Referenzen bei Übergabeparameter? on Tue, 08 Aug 2006 13:07:58 GMT]]></title><description><![CDATA[<p>[edit] war Blödsinn [/edit]</p>
<p>Greetz, Swordfish</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1112971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1112971</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Tue, 08 Aug 2006 13:07:58 GMT</pubDate></item></channel></rss>