<?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[default parameter nur am Ende?]]></title><description><![CDATA[<p>Darf man Defaultparameter nur am Ende der Parameter setzen?</p>
<pre><code>foo( int a = 42, int b ); // geht nicht

bar( int b, int a = 42 ); // geht
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/321400/default-parameter-nur-am-ende</link><generator>RSS for Node</generator><lastBuildDate>Mon, 20 Jul 2026 03:16:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/321400.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 10 Nov 2013 08:42:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 08:42:13 GMT]]></title><description><![CDATA[<p>Darf man Defaultparameter nur am Ende der Parameter setzen?</p>
<pre><code>foo( int a = 42, int b ); // geht nicht

bar( int b, int a = 42 ); // geht
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2364690</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364690</guid><dc:creator><![CDATA[defaultorder]]></dc:creator><pubDate>Sun, 10 Nov 2013 08:42:13 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 08:45:31 GMT]]></title><description><![CDATA[<p>Ja, muss man.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364691</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364691</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sun, 10 Nov 2013 08:45:31 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 10:30:30 GMT]]></title><description><![CDATA[<p>Wie stellst du es dir denn mit Default-<em>Argumenten</em> am Anfang vor? Wie ruft man die Funktion auf?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364700</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364700</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Sun, 10 Nov 2013 10:30:30 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 10:38:41 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/29873">@Nathan</a>: danke</p>
<p>@ArKot: Halt mit einem Argument foo(23), dies wird dann automatisch an dem Parameter ohne Default weitergegeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364701</guid><dc:creator><![CDATA[defaultorder]]></dc:creator><pubDate>Sun, 10 Nov 2013 10:38:41 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 10:43:47 GMT]]></title><description><![CDATA[<p>defaultorder schrieb:</p>
<blockquote>
<p>@ArKot: Halt mit einem Argument foo(23), dies wird dann automatisch an dem Parameter ohne Default weitergegeben.</p>
</blockquote>
<p>Naja, der Compiler hat dann nur ein Problem: Wollte der User, dass die 23 an den Parameter ohne Default weitergegeben wird oder hat er schlicht den anderen Parameter vergessen?<br />
Das kann dann zu Überraschungen führen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364702</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364702</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sun, 10 Nov 2013 10:43:47 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Tue, 12 Nov 2013 09:42:24 GMT]]></title><description><![CDATA[<p>Nathan schrieb:</p>
<blockquote>
<p>Naja, der Compiler hat dann nur ein Problem:</p>
</blockquote>
<p>Der Compiler hat gar kein Problem, wenn die Regel ist erstmal alle Parameter ohne Defaultwerte zu füllen und wenns zu viele Argumente sind von links nach rechts ein paar Argumente ohne Default-Wert hinzuzunehmen, dann ist für den Compiler alles eindeutig.</p>
<pre><code class="language-cpp">int foo(int a=1,int b,int c=3,int d);
foo(1,2);//b=1 und d=2
foo(1,2,3);//a=1,b=2 und d=3
foo(1,2,3,4);//a=1,b=2,c=3,d=4
</code></pre>
<p>Nathan schrieb:</p>
<blockquote>
<p>Wollte der User, dass die 23 an den Parameter ohne Default weitergegeben wird</p>
</blockquote>
<p>Offensichtlich ja.</p>
<blockquote>
<p>oder hat er schlicht den anderen Parameter vergessen?</p>
</blockquote>
<p>Vergesslichkeit ist nie gut. Dieses Argument gilt übrigens genauso mit allen default-Parametern.</p>
<p>Nathan schrieb:</p>
<blockquote>
<p>Das kann dann zu Überraschungen führen.</p>
</blockquote>
<p>Nur, wenn falsch eingesetzt und dann kann alles zu Überraschungen führen. Ich sehe da kein Problem, vor allem, wenn man es sorgfältig mit einsetzt und Typfehler erzeugt, falls was vergessen wurde.</p>
<p>Es gibt also keine Probleme, es ist halt einfach nicht so.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364704</guid><dc:creator><![CDATA[totschlag]]></dc:creator><pubDate>Tue, 12 Nov 2013 09:42:24 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 11:08:34 GMT]]></title><description><![CDATA[<p>Echt mühsam, wenn die Vorschau nicht geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364705</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364705</guid><dc:creator><![CDATA[totschlag]]></dc:creator><pubDate>Sun, 10 Nov 2013 11:08:34 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 11:31:14 GMT]]></title><description><![CDATA[<p>Dein Beispiel demonstriert schön, wieso man nicht alles machen sollte, bloß weil es eindeutig regelbar wäre. Brainfuck ist auch eine Sprache in der für einen Compiler eindeutig klar ist, wie der Code zu interpretieren ist. Trotzdem ist die Sprache eher unbeliebt <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2364708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364708</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 10 Nov 2013 11:31:14 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 16:10:33 GMT]]></title><description><![CDATA[<p>Legastheniker schrieb:</p>
<blockquote>
<p>@ArKot: Halt mit einem Argument foo(23), dies wird dann automatisch an dem Parameter ohne Default weitergegeben.</p>
</blockquote>
<p>Wollen wir eine Umfrage starten, wie viele Programmierer das sinnvoll und intuitiv finden, und das in ihrem Code so nutzen wollen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364711</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Sun, 10 Nov 2013 16:10:33 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 12:06:22 GMT]]></title><description><![CDATA[<p>VB hatte damals eine Lösung für dieses Problem, dort konnte man Parameter einfach leer lassen, also in etwa so:</p>
<pre><code class="language-cpp">void f(int a, float b = 42, const char* d = nullptr, int c);

f(1, 2, blub, 4);
f(1, , , 3);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2364712</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364712</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Sun, 10 Nov 2013 12:06:22 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 14:49:24 GMT]]></title><description><![CDATA[<p>In Python, oder was es Perl, kann man sogar die Reihenfolge der Argumente, beim Aufruf, vertauschen. Da geht schon ziemlich viel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364733</guid><dc:creator><![CDATA[PythonPerle]]></dc:creator><pubDate>Sun, 10 Nov 2013 14:49:24 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Sun, 10 Nov 2013 18:23:40 GMT]]></title><description><![CDATA[<p>totschlag schrieb:</p>
<blockquote>
<p>Es gibt also keine Probleme, es ist halt einfach nicht so.</p>
</blockquote>
<p>Aha, du musst es ja wissen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2364785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2364785</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 10 Nov 2013 18:23:40 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Tue, 12 Nov 2013 01:04:53 GMT]]></title><description><![CDATA[<p>Struppi hat verpennt,<br />
f(radius=1,durchmesser=2);<br />
zuzulassen.</p>
<p>double f(double radius,double durchmesser,double exzentrizität=1);</p>
<p>will ich aufrufen als</p>
<p>f(radius=4,durchmesser=5);</p>
<p>und später als</p>
<p>f(durchmesser=5,radius=2);</p>
<p>mir ist doch Schnuppe, welche willkürliche Reihenfolge der Lib-Autor hatte. Ich rede Bedeutung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2365047</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2365047</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 12 Nov 2013 01:04:53 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Wed, 13 Nov 2013 09:03:40 GMT]]></title><description><![CDATA[<p>Defaultparameter machen meistens mehr Arbeit als sie effektiv einsparen. lieber eine weitere Funktion wenn man schon der Meinung ist das sich da nie wieder etwas ändern wird und der Aufruf so richtig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2365262</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2365262</guid><dc:creator><![CDATA[untoter__]]></dc:creator><pubDate>Wed, 13 Nov 2013 09:03:40 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Wed, 13 Nov 2013 10:42:26 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>Struppi hat verpennt,<br />
f(radius=1,durchmesser=2);<br />
zuzulassen.</p>
</blockquote>
<p>Oder er fand die Idee schlecht. Oder das Standardkomittee hat sie abgelehnt.<br />
Siehe z.B. <a href="https://groups.google.com/forum/#!topic/comp.std.c/38gO3dmJf0Q" rel="nofollow">https://groups.google.com/forum/#!topic/comp.std.c/38gO3dmJf0Q</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2365277</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2365277</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Wed, 13 Nov 2013 10:42:26 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Fri, 15 Nov 2013 08:53:37 GMT]]></title><description><![CDATA[<p>untoter__ schrieb:</p>
<blockquote>
<p>Defaultparameter machen meistens mehr Arbeit als sie effektiv einsparen.</p>
</blockquote>
<p>Kann ich bislang nicht bestätigen, ins besondere wenn sie dazu dienen Codeduplikate zu vermeiden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2365281</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2365281</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Fri, 15 Nov 2013 08:53:37 GMT</pubDate></item><item><title><![CDATA[Reply to default parameter nur am Ende? on Fri, 15 Nov 2013 08:38:46 GMT]]></title><description><![CDATA[<p>Arcoth schrieb:</p>
<blockquote>
<p>Wie stellst du es dir denn mit Default-<em>Argumenten</em> am Anfang vor? Wie ruft man die Funktion auf?</p>
</blockquote>
<p>naja man kann sich durchaus was überlegen</p>
<p>func(, 3);</p>
<p>Ästhetische Gründe würden zumindest die prinzipielle Machbarkeit nicht überwiegen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2365607</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2365607</guid><dc:creator><![CDATA[rand(a)]]></dc:creator><pubDate>Fri, 15 Nov 2013 08:38:46 GMT</pubDate></item></channel></rss>