<?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[Eigene Klasse als template-Klasse übergeben]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab zwei Klassen:</p>
<pre><code class="language-cpp">class myclass{...};
template &lt;typename T&gt;class mytclass{...};
</code></pre>
<p>Jetzt möchte ich mytclass mit myclass als T verwenden, also so:</p>
<pre><code class="language-cpp">mytclass&lt;myclass&gt; mtc;
</code></pre>
<p>Allerdings bekomm ich da eine Exception, dass kein geeigneter Standardkonstruktor verfügbar ist. Was muss ich tun,damit das funktioniert?</p>
<p>Als T sollen Typen wie int,double oder eigene Klassen möglich sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/288142/eigene-klasse-als-template-klasse-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Thu, 20 Aug 2026 03:16:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/288142.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 11 Jun 2011 06:15:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eigene Klasse als template-Klasse übergeben on Sat, 11 Jun 2011 06:15:18 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab zwei Klassen:</p>
<pre><code class="language-cpp">class myclass{...};
template &lt;typename T&gt;class mytclass{...};
</code></pre>
<p>Jetzt möchte ich mytclass mit myclass als T verwenden, also so:</p>
<pre><code class="language-cpp">mytclass&lt;myclass&gt; mtc;
</code></pre>
<p>Allerdings bekomm ich da eine Exception, dass kein geeigneter Standardkonstruktor verfügbar ist. Was muss ich tun,damit das funktioniert?</p>
<p>Als T sollen Typen wie int,double oder eigene Klassen möglich sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076606</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076606</guid><dc:creator><![CDATA[MaWe4585]]></dc:creator><pubDate>Sat, 11 Jun 2011 06:15:18 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Klasse als template-Klasse übergeben on Sat, 11 Jun 2011 06:44:55 GMT]]></title><description><![CDATA[<p>das liegt dann daran dass du in deinem template versuchst deine klasse mit einem konstruktor (in dem fall den std konstruktor) instantiieren obwohl der nicht für deine klasse definiert ist</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076610</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076610</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Sat, 11 Jun 2011 06:44:55 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Klasse als template-Klasse übergeben on Sat, 11 Jun 2011 07:00:43 GMT]]></title><description><![CDATA[<p>Was du bekommst ist keine Exception sondern ein Compilerfehler. Und der liegt entweder daran was Skym0sh0 gesagt hat oder daran dass dein template keinen Default-Konstruktor definiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076615</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076615</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Sat, 11 Jun 2011 07:00:43 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Klasse als template-Klasse übergeben on Sat, 11 Jun 2011 07:15:29 GMT]]></title><description><![CDATA[<p>Am besten so.</p>
<pre><code class="language-cpp">{...}
</code></pre>
<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>
]]></description><link>https://www.c-plusplus.net/forum/post/2076617</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076617</guid><dc:creator><![CDATA[sdfdsf]]></dc:creator><pubDate>Sat, 11 Jun 2011 07:15:29 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Klasse als template-Klasse übergeben on Sat, 11 Jun 2011 07:57:16 GMT]]></title><description><![CDATA[<p>ok, meine Klasse hat keinen std Konstruktor sondern einen mit zwei Parametern</p>
<pre><code class="language-cpp">class myclass
{
...
  public:
    myclass(double value1,double value2);
...
}
</code></pre>
<p>Wie muss ich meinen Code ändern damit der damit funktioniert?<br />
Oder geht das generell nur mit einem std Konstruktor?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076623</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076623</guid><dc:creator><![CDATA[MaWe4585]]></dc:creator><pubDate>Sat, 11 Jun 2011 07:57:16 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Klasse als template-Klasse übergeben on Sat, 11 Jun 2011 08:23:36 GMT]]></title><description><![CDATA[<p>Der Template-Parameter muß alle Operationen/Funktionen unterstützen, die im Template verwendet werden. Wenn du zwei Objekte miteinandervergleichst, brauchst du einen <code>operator==</code> , wenn du ein Objekt per <code>T tmp;</code> anlegst, brauchst du einen Default-Konstruktor.<br />
Das heißt, entweder du baust das Template so um, daß keine Default-Konstruktion notwendig wird, oder du spendierst der übergebenen Klasse einen Default-Konstruktor.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2076629</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2076629</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 11 Jun 2011 08:23:36 GMT</pubDate></item></channel></rss>