<?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 Spezialisierung]]></title><description><![CDATA[<p>Hi,<br />
ich habe folgendes problem.<br />
Ich habe eine klasse mit zwei Template-Parametern. Wenn ich beide spezialisiere schluckt das der Compiler ( 3 ). Ebenso, wenn ich keinen Parameter spezialisiere ( 2 ).</p>
<p>Jetzt meine Frage: Geht es auch nur einen Parameter (hier T2) zu spezialisieren und den anderen allgemein zu halten? Wenn ja wie ist die Syntax. Müßte ja irgenwie aussehen wie in ( 1 ).</p>
<pre><code class="language-cpp">template&lt;class T1, class T2&gt;
{
  struct test
  {
    void doo     (T1 param1, T2 param2);
  }
}
//1 -&gt; wie bekomme ich hier nur einen Parameter spezialisiert?
template &lt;typename T1&gt; 
    void test&lt;T1 , bool&gt;::doo(T1 type1, bool type2){}
//2
template &lt;typename T1, typename T2&gt;
    void test&lt;T1 , T2&gt;::doo(T1 type1 , T2 type2){}
//3
template &lt;&gt; 
    void test&lt;bool , bool&gt;::doo(bool type1, bool type2){}
</code></pre>
<p>Für Hilfe wäre ich dankbar, häng schon einige Tage an diesem Problem und finde keine Lösung.</p>
<p>bye<br />
mss</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/219834/template-spezialisierung</link><generator>RSS for Node</generator><lastBuildDate>Wed, 07 Oct 2026 17:08:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/219834.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 08 Aug 2008 09:35:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Template Spezialisierung on Fri, 08 Aug 2008 09:35:02 GMT]]></title><description><![CDATA[<p>Hi,<br />
ich habe folgendes problem.<br />
Ich habe eine klasse mit zwei Template-Parametern. Wenn ich beide spezialisiere schluckt das der Compiler ( 3 ). Ebenso, wenn ich keinen Parameter spezialisiere ( 2 ).</p>
<p>Jetzt meine Frage: Geht es auch nur einen Parameter (hier T2) zu spezialisieren und den anderen allgemein zu halten? Wenn ja wie ist die Syntax. Müßte ja irgenwie aussehen wie in ( 1 ).</p>
<pre><code class="language-cpp">template&lt;class T1, class T2&gt;
{
  struct test
  {
    void doo     (T1 param1, T2 param2);
  }
}
//1 -&gt; wie bekomme ich hier nur einen Parameter spezialisiert?
template &lt;typename T1&gt; 
    void test&lt;T1 , bool&gt;::doo(T1 type1, bool type2){}
//2
template &lt;typename T1, typename T2&gt;
    void test&lt;T1 , T2&gt;::doo(T1 type1 , T2 type2){}
//3
template &lt;&gt; 
    void test&lt;bool , bool&gt;::doo(bool type1, bool type2){}
</code></pre>
<p>Für Hilfe wäre ich dankbar, häng schon einige Tage an diesem Problem und finde keine Lösung.</p>
<p>bye<br />
mss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1561315</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1561315</guid><dc:creator><![CDATA[mss]]></dc:creator><pubDate>Fri, 08 Aug 2008 09:35:02 GMT</pubDate></item><item><title><![CDATA[Reply to Template Spezialisierung on Fri, 08 Aug 2008 09:42:08 GMT]]></title><description><![CDATA[<p>Was du da spezialisierst ist nicht die Klasse sondern nur die Funktion doo.<br />
Leider kann man Funktionen nicht partiell spezialisieren, dazu müsstest du dann wirklich die komplette Klasse spezialisieren:</p>
<pre><code class="language-cpp">template&lt;class T1&gt;
// {   &lt;--- die KLammern hier sind unnötig
struct test&lt;T1, bool&gt;
{
    void doo     (T1 param1, bool param2);
};  // &lt;--- das Semikolon ist sehr wohl nötig
// }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1561325</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1561325</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 08 Aug 2008 09:42:08 GMT</pubDate></item></channel></rss>