<?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 mit optionalen Template-Parametern]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich schreibe ein Template, das 4 Template-Parameter bekommt. Nun soll einer davon in gewisser Weise optional sein (geht wahrscheinlich nicht direkt - die Frage ist nur wie ich das Problem umgehen kann).</p>
<p>Also, ich habe dieses Template:</p>
<pre><code>template&lt;class T, int32 rows, int32 cols, T defaultValue&gt; class Matrix{
}
</code></pre>
<p>Es wird also eine Matrix mit einer bestimmten Zeilen- und Spaltenanzahl angelegt. Die Elemente sind von einem bestimmten Typ T und bekommen einen Default-Wert.</p>
<p>Das Problem betrifft nun den Copy-Construktor:</p>
<pre><code>Matrix(const Matrix&lt;T, rows, cols, defaultValue&gt;&amp; matrix2){
}
</code></pre>
<p>Hier muss ich ebenfalls einen Default-Wert angeben. Dabei wäre es doch kein Problem, dass man einen Typ, der mit Default-Wert 1.0 angelegt wurde, einem Typ mit Default-Wert 0.0 zuweist.</p>
<p>Hat jemand eine Idee was ich da machen kann oder muss ich auf den Default-Wert verzichten?</p>
<p>Danke!</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143131/template-mit-optionalen-template-parametern</link><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 03:07:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143131.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 05 Apr 2006 16:50:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Template mit optionalen Template-Parametern on Wed, 05 Apr 2006 16:50:07 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich schreibe ein Template, das 4 Template-Parameter bekommt. Nun soll einer davon in gewisser Weise optional sein (geht wahrscheinlich nicht direkt - die Frage ist nur wie ich das Problem umgehen kann).</p>
<p>Also, ich habe dieses Template:</p>
<pre><code>template&lt;class T, int32 rows, int32 cols, T defaultValue&gt; class Matrix{
}
</code></pre>
<p>Es wird also eine Matrix mit einer bestimmten Zeilen- und Spaltenanzahl angelegt. Die Elemente sind von einem bestimmten Typ T und bekommen einen Default-Wert.</p>
<p>Das Problem betrifft nun den Copy-Construktor:</p>
<pre><code>Matrix(const Matrix&lt;T, rows, cols, defaultValue&gt;&amp; matrix2){
}
</code></pre>
<p>Hier muss ich ebenfalls einen Default-Wert angeben. Dabei wäre es doch kein Problem, dass man einen Typ, der mit Default-Wert 1.0 angelegt wurde, einem Typ mit Default-Wert 0.0 zuweist.</p>
<p>Hat jemand eine Idee was ich da machen kann oder muss ich auf den Default-Wert verzichten?</p>
<p>Danke!</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1031281</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1031281</guid><dc:creator><![CDATA[ChrisR]]></dc:creator><pubDate>Wed, 05 Apr 2006 16:50:07 GMT</pubDate></item><item><title><![CDATA[Reply to Template mit optionalen Template-Parametern on Wed, 05 Apr 2006 17:36:43 GMT]]></title><description><![CDATA[<p>defaultvalue ist bei dir ein Typ, da muss nur der Typ übereinstimmen, wo ist das problem?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1031316</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1031316</guid><dc:creator><![CDATA[Any]]></dc:creator><pubDate>Wed, 05 Apr 2006 17:36:43 GMT</pubDate></item><item><title><![CDATA[Reply to Template mit optionalen Template-Parametern on Wed, 05 Apr 2006 19:08:32 GMT]]></title><description><![CDATA[<p>ein template ctor oder ein konvertierungs-operator (eher schlecht) lösen das problem:</p>
<pre><code class="language-cpp">template&lt;T otherDefaultValue&gt;
Matrix(const Matrix&lt;T, rows, cols, otherDefaultValue&gt;&amp; matrix2) { /* ... */ }
</code></pre>
<p>wenn ein selbstdefinierter copy-ctor erforderlich ist, so musst du ihn trotzdem zusätzlich definieren, denn ein template ctor ist niemals ein copy-ctor.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1031378</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1031378</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Wed, 05 Apr 2006 19:08:32 GMT</pubDate></item></channel></rss>