<?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[vererbung bei template parameter]]></title><description><![CDATA[<p>hallo zusammen,</p>
<p>ich habe folgendes template:</p>
<pre><code>template &lt;typename T, typename S=ReferenceTimer&lt;T&gt; &gt;
        class ReferenceTimerQueue : public PairQueue&lt;T, S *&gt; {
        public:
            void add(S * timer);          
        };

        template &lt;typename T, typename S &gt;
        void ReferenceTimerQueue&lt;T, S&gt;::add(S * timer){

            T ref = timer-&gt;getReference();
            PairQueue&lt;T, S *&gt;::add(ref, timer);

       }
</code></pre>
<p>Wie bekomme ich es hin, dass das Template auch mit Unterklassen von S=ReferenceTimer&lt;T&gt; arbeitet? Im Moment bekomme ich da immer Fehler. Oder übersehe ich da wieder was triviales?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/314035/vererbung-bei-template-parameter</link><generator>RSS for Node</generator><lastBuildDate>Sat, 01 Aug 2026 22:36:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/314035.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 18 Feb 2013 12:40:49 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to vererbung bei template parameter on Wed, 20 Feb 2013 09:06:10 GMT]]></title><description><![CDATA[<p>hallo zusammen,</p>
<p>ich habe folgendes template:</p>
<pre><code>template &lt;typename T, typename S=ReferenceTimer&lt;T&gt; &gt;
        class ReferenceTimerQueue : public PairQueue&lt;T, S *&gt; {
        public:
            void add(S * timer);          
        };

        template &lt;typename T, typename S &gt;
        void ReferenceTimerQueue&lt;T, S&gt;::add(S * timer){

            T ref = timer-&gt;getReference();
            PairQueue&lt;T, S *&gt;::add(ref, timer);

       }
</code></pre>
<p>Wie bekomme ich es hin, dass das Template auch mit Unterklassen von S=ReferenceTimer&lt;T&gt; arbeitet? Im Moment bekomme ich da immer Fehler. Oder übersehe ich da wieder was triviales?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2299699</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2299699</guid><dc:creator><![CDATA[sven_]]></dc:creator><pubDate>Wed, 20 Feb 2013 09:06:10 GMT</pubDate></item><item><title><![CDATA[Reply to vererbung bei template parameter on Mon, 18 Feb 2013 13:34:43 GMT]]></title><description><![CDATA[<p><a href="http://www.c-plusplus.net/forum/304133" rel="nofollow">http://www.c-plusplus.net/forum/304133</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2299706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2299706</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Mon, 18 Feb 2013 13:34:43 GMT</pubDate></item><item><title><![CDATA[Reply to vererbung bei template parameter on Mon, 18 Feb 2013 14:28:17 GMT]]></title><description><![CDATA[<p>ok ok, bereichtigte kritik <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>also meine frage ist, wie kann ich das dargestellte template auch mit subklassen von S verwenden?</p>
<p>ich habe:</p>
<pre><code>template &lt;typename T, typename S=ReferenceTimer&lt;T&gt; &gt;
        class ReferenceTimerQueue : public PairQueue&lt;T, S *&gt; {
        public:
            void add(S * timer);          
        };
</code></pre>
<p>ich möchte:</p>
<pre><code>template &lt;typename T, typename S=IsAReferenceTimer&lt;T&gt; &gt;
        class ReferenceTimerQueue : public PairQueue&lt;T, S *&gt; {
</code></pre>
<p>Geht dies?</p>
<p>gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2299717</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2299717</guid><dc:creator><![CDATA[sven_]]></dc:creator><pubDate>Mon, 18 Feb 2013 14:28:17 GMT</pubDate></item><item><title><![CDATA[Reply to vererbung bei template parameter on Mon, 18 Feb 2013 14:55:28 GMT]]></title><description><![CDATA[<p>Ich bin geneigt zu antworten: probier es aus.<br />
Ich verstehe die Frage nicht.<br />
Was ist hier mit &quot;verwenden&quot; gemeint?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2299722</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2299722</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Mon, 18 Feb 2013 14:55:28 GMT</pubDate></item><item><title><![CDATA[Reply to vererbung bei template parameter on Mon, 18 Feb 2013 15:04:25 GMT]]></title><description><![CDATA[<p>sven_ schrieb:</p>
<blockquote>
<p>Im Moment bekomme ich da immer Fehler.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Zeig ein Minimalbeispiel, das den Fehler reproduziert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2299723</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2299723</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Mon, 18 Feb 2013 15:04:25 GMT</pubDate></item><item><title><![CDATA[Reply to vererbung bei template parameter on Tue, 19 Feb 2013 20:22:53 GMT]]></title><description><![CDATA[<p>sven_ schrieb:</p>
<blockquote>
<p>ok ok, bereichtigte kritik <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>also meine frage ist, wie kann ich das dargestellte template auch mit subklassen von S verwenden?</p>
<pre><code>template &lt;typename T, typename S=ReferenceTimer&lt;T&gt; &gt;
        class ReferenceTimerQueue : public PairQueue&lt;T, S *&gt; {
        public:
            void add(S * timer);          
        };
</code></pre>
</blockquote>
<p>Solange die Sub-Klassen alle Bedingungen erfüllen musst du gar nichts weiter tun.<br />
Soweit ich dich verstehe willst du nur folgendes sicherstellen:</p>
<pre><code>template &lt;typename T, typename S&gt;
        class ReferenceTimerQueue : public PairQueue&lt;T, S *&gt; 
        {
        BOOST_STATIC_ASSERT(boost::is_base_of&lt;ReferenceTimer, S&gt;::value)
        public:
            void add(S * timer);          
        };
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2300079</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2300079</guid><dc:creator><![CDATA[nurf]]></dc:creator><pubDate>Tue, 19 Feb 2013 20:22:53 GMT</pubDate></item><item><title><![CDATA[Reply to vererbung bei template parameter on Wed, 20 Feb 2013 08:52:19 GMT]]></title><description><![CDATA[<p>hallo jungs,</p>
<p>vielen dank für die hilfe. war doch stark verwirrt, nun tut es aber. <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/2300171</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2300171</guid><dc:creator><![CDATA[sven_]]></dc:creator><pubDate>Wed, 20 Feb 2013 08:52:19 GMT</pubDate></item></channel></rss>