<?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[Template- und Funktions- defaultparameter]]></title><description><![CDATA[<p>Wieso ist sowas nicht möglich (Memberfunktion):</p>
<pre><code class="language-cpp">template &lt;typename Predicate = std::less&lt;T&gt;&gt;
void my_super_magic_constant_time_sort(Predicate pred = Predicate())
{
}
</code></pre>
<p>Übersehe ich hier etwas, oder ist das ein Fehler meines Compilers?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/287661/template-und-funktions-defaultparameter</link><generator>RSS for Node</generator><lastBuildDate>Thu, 20 Aug 2026 07:50:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/287661.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 01 Jun 2011 17:04:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 17:04:33 GMT]]></title><description><![CDATA[<p>Wieso ist sowas nicht möglich (Memberfunktion):</p>
<pre><code class="language-cpp">template &lt;typename Predicate = std::less&lt;T&gt;&gt;
void my_super_magic_constant_time_sort(Predicate pred = Predicate())
{
}
</code></pre>
<p>Übersehe ich hier etwas, oder ist das ein Fehler meines Compilers?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072116</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072116</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Wed, 01 Jun 2011 17:04:33 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 17:14:11 GMT]]></title><description><![CDATA[<p>Hat dein Compiler C++0x drauf? Und da es sich um eine Methode handelt, solltest du vor dem Funktionsnamen noch die Klasse, die sie beinhaltet und einen Bereichauflösungsoperator schreiben.</p>
<p>EDIT: Funktionstemplates können keine Default-Argumente haben</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072120</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Wed, 01 Jun 2011 17:14:11 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 17:14:10 GMT]]></title><description><![CDATA[<p>Die Methode wird hier nur als Beispiel direkt innerhalb der Klasse definiert. Ja ich verwende C++0x, aber ich wüsste nicht, welchen Unterschied das machen sollte.</p>
<p>Dieses Problem hatte ich vor einiger Zeit und ich habe mich darüber gewundert. Vielleicht funktioniert das jetzt ja, aber damals hat das im GCC nicht funktioniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072123</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Wed, 01 Jun 2011 17:14:10 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 17:14:50 GMT]]></title><description><![CDATA[<p>Funktionstemplates können (seltsamerweise) keine Default-Argumente haben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072125</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072125</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Wed, 01 Jun 2011 17:14:50 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 17:22:53 GMT]]></title><description><![CDATA[<p>Nein, Quatsch! Sorry...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072127</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072127</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Wed, 01 Jun 2011 17:22:53 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 18:26:23 GMT]]></title><description><![CDATA[<p>(1) Was ist T?</p>
<p>(2) Funktionstemplates können keine Default-Template-Argumente haben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072159</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072159</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 01 Jun 2011 18:26:23 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 18:32:28 GMT]]></title><description><![CDATA[<p>T ist in dem Fall der template-Parameter eine std::list Implementierung.<br />
Gibt es für (2) einen Grund?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072163</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072163</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Wed, 01 Jun 2011 18:32:28 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 19:40:33 GMT]]></title><description><![CDATA[<p>314159265358979 schrieb:</p>
<blockquote>
<p>Gibt es für (2) einen Grund?</p>
</blockquote>
<p>Keinen (mir bekannten) technischen.</p>
<p>Ich vermute dass es einfach übersehen wurde, oder als &quot;nicht nützlich genug =&gt; den Aufwand nicht wert&quot; weggelassen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072184</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072184</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 01 Jun 2011 19:40:33 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 21:22:15 GMT]]></title><description><![CDATA[<p>Nunja, ich musste das Problem durch eine Überladung lösen, sehr nervig.</p>
<p>Wie ist das eigentlich, sollte man beim sortieren für &quot;default&quot;-Sortierung std::less&lt;T&gt; oder operator &lt; nehmen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072217</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Wed, 01 Jun 2011 21:22:15 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Wed, 01 Jun 2011 23:54:46 GMT]]></title><description><![CDATA[<p>Ich würde std::less nehmen.</p>
<p>Ich wüsste auch nicht wie man <code>operator &lt;</code> ohne Umstände (=zusätzliche Hilfsklassen/-funtionen) verwenden könnte, ohne die Flexibilität einzuschränken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072233</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 01 Jun 2011 23:54:46 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Thu, 02 Jun 2011 08:35:29 GMT]]></title><description><![CDATA[<p>Du könntest natürlich auch ein function-like Klassentemplate machen. Den less-Operator kann man zwar auch verwenden, aber niemand weiss, ob er frei ist oder als Methode implementiert wurde.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072291</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072291</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Thu, 02 Jun 2011 08:35:29 GMT</pubDate></item><item><title><![CDATA[Reply to Template- und Funktions- defaultparameter on Thu, 02 Jun 2011 14:34:42 GMT]]></title><description><![CDATA[<p>EOutOfResources schrieb:</p>
<blockquote>
<p>Den less-Operator kann man zwar auch verwenden, aber niemand weiss, ob er frei ist oder als Methode implementiert wurde.</p>
</blockquote>
<p><code>std::less</code> ist ein Funktor, der auf <code>operator&lt;</code> zurückgreift. Wenns ihn schon gibt, würde ich ihn auch verwenden. Er garantiert im Gegensatz zu <code>operator&lt;</code> auch definiertes Strict Weak Ordering bei Zeigervergleichen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2072417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2072417</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 02 Jun 2011 14:34:42 GMT</pubDate></item></channel></rss>