<?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[templates templates....]]></title><description><![CDATA[<p>Hi, ich habe folgenden compilenden code:</p>
<pre><code class="language-cpp">template&lt;typename typeA&gt; class A {
    A.CODE
    template&lt;typename typeB&gt; class B {
        B.CODE
    };
    A.CODE
};
</code></pre>
<p>, würde den code von B aber lieber außerhalb von A hinschreiben, also</p>
<pre><code class="language-cpp">template&lt;typename typeA&gt; class A {
    A.CODE
    template&lt;typename typeB&gt; class B;
    A.CODE
};

template&lt;typename typeA&gt; template&lt;typename typeB&gt; class A&lt;typeA&gt;::B&lt;typeB&gt; {
    B.CODE
};
</code></pre>
<p>, krieg aber beim besten Willen die Syntax nich hin.<br />
Allgemein: Sowohl A als auch B sollen als template argumente typen übergeben bekommen, also z.B. float oder int; der typ von B ist dabei von A völlig unabhängig.<br />
Wär über konstruktive Vorschläge sehr dankbar <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/topic/204683/templates-templates</link><generator>RSS for Node</generator><lastBuildDate>Thu, 08 Oct 2026 18:03:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/204683.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 06 Feb 2008 00:50:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to templates templates.... on Wed, 06 Feb 2008 00:50:31 GMT]]></title><description><![CDATA[<p>Hi, ich habe folgenden compilenden code:</p>
<pre><code class="language-cpp">template&lt;typename typeA&gt; class A {
    A.CODE
    template&lt;typename typeB&gt; class B {
        B.CODE
    };
    A.CODE
};
</code></pre>
<p>, würde den code von B aber lieber außerhalb von A hinschreiben, also</p>
<pre><code class="language-cpp">template&lt;typename typeA&gt; class A {
    A.CODE
    template&lt;typename typeB&gt; class B;
    A.CODE
};

template&lt;typename typeA&gt; template&lt;typename typeB&gt; class A&lt;typeA&gt;::B&lt;typeB&gt; {
    B.CODE
};
</code></pre>
<p>, krieg aber beim besten Willen die Syntax nich hin.<br />
Allgemein: Sowohl A als auch B sollen als template argumente typen übergeben bekommen, also z.B. float oder int; der typ von B ist dabei von A völlig unabhängig.<br />
Wär über konstruktive Vorschläge sehr dankbar <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/1450195</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450195</guid><dc:creator><![CDATA[NatOp1]]></dc:creator><pubDate>Wed, 06 Feb 2008 00:50:31 GMT</pubDate></item><item><title><![CDATA[Reply to templates templates.... on Wed, 06 Feb 2008 01:26:02 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">template&lt;typename typeA&gt; template&lt;typename typeB&gt; class A&lt;typeA&gt;::B&lt;typeB&gt; {
    B.CODE
};
</code></pre>
<p>Damit wird eine partielle Spezialisierung des Templates A&lt;typeA&gt;::B deklariert. Allerdings stimmt die Argumentliste &lt;typeB&gt; mit der impliziten Argumentliste des Primärtemplates ein - das ist nicht erlaubt und würde auch das Primärtemplate überflüssig machen. Da du hier aber gar nicht spezialisieren willst, sondern nur die Definition des Primärtemplates A&lt;typeA&gt;::B angeben willst, darf keine Argumentliste benutzt werden:</p>
<pre><code class="language-cpp">template&lt;typename typeA&gt; template&lt;typename typeB&gt; class A&lt;typeA&gt;::B {
    ...
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1450202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450202</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Wed, 06 Feb 2008 01:26:02 GMT</pubDate></item><item><title><![CDATA[Reply to templates templates.... on Wed, 06 Feb 2008 09:32:35 GMT]]></title><description><![CDATA[<p>Ahh funktioniert und ne Erklärung gleich mit dabei : D<br />
Vielen Dank,war seit Tagen auf der Suche nach eben dieser Antwort.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450321</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450321</guid><dc:creator><![CDATA[NatOp]]></dc:creator><pubDate>Wed, 06 Feb 2008 09:32:35 GMT</pubDate></item></channel></rss>