<?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[Frage zu  Template]]></title><description><![CDATA[<p>Wenn ich ein Template habe wie kann ich damit weiter machen. Also damit listen oder Parameter erstellen. Habe noch nie mit Template gearbeitet.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/284411/frage-zu-template</link><generator>RSS for Node</generator><lastBuildDate>Sat, 22 Aug 2026 02:27:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/284411.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 31 Mar 2011 17:17:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:17:47 GMT]]></title><description><![CDATA[<p>Wenn ich ein Template habe wie kann ich damit weiter machen. Also damit listen oder Parameter erstellen. Habe noch nie mit Template gearbeitet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042875</guid><dc:creator><![CDATA[Delete]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:17:47 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:22:12 GMT]]></title><description><![CDATA[<p>Hast Du ein konkretes Problem? Wenn ja, dann zeige es, ist ein wenig schwierig, da deine Frage sehr unklar ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042879</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042879</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:22:12 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:22:16 GMT]]></title><description><![CDATA[<p>Das kannst du im deinem C++ Buch nachlesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042880</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042880</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:22:16 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:22:26 GMT]]></title><description><![CDATA[<p>Ich weiss nicht was genau du damit meinst.<br />
Kleines Beispiel:</p>
<pre><code class="language-cpp">template&lt;class T&gt;
class MeineKlasse
{
  T MeineVariable;
  public:
    void SetzteVariable(T&amp; NeuerWert);
};

template&lt;class T&gt;
void
MeineKlasse::SetzteVariable(T&amp; NeuerWert)
{
  this-&gt;MeineVariable = NeuerWert;
}
</code></pre>
<p>MfG, EOutOfResources</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042881</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042881</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:22:26 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:37:24 GMT]]></title><description><![CDATA[<p>ich hänge mich jetzt da mal dran, ist zwar nicht ganz korrekt, ich weiß, aber einen neuen Thread mit ähnlichem Titel zu erstellen fand ich auch nicht richtig.</p>
<p>ich wollte zu Übung ein klassen-template schreiben, und zwar einen eigenen Vektor.<br />
die Headerdatei sieht wie folgt aus:</p>
<pre><code class="language-cpp">template&lt;class T&gt;
class Vektor
{
public:
	Vektor();
	Vektor(const Vektor&amp;);

	void push_back(T);
	T&amp; at(int);

	friend std::ostream&amp; operator&lt;&lt;(std::ostream&amp;,const Vektor&amp;);

private:
	int length;
	T* list;
};
</code></pre>
<p>die zugehörigen implementierungen, hier der konstruktor:</p>
<pre><code class="language-cpp">template&lt;class T&gt;
Vektor&lt;T&gt;::Vektor()
{
	length = 0;
	list = new T[length];
}
</code></pre>
<p>wenn ich ein neues objekt Vektor erstelle, kriege ich folgende Fehlermeldung:<br />
(z.b.</p>
<pre><code class="language-cpp">vektor&lt;int&gt; neuerVektor;
</code></pre>
<p>)</p>
<p>&quot;vektor&lt;int&gt;::Vektor()&quot; referenced from: _main in main.o<br />
symbol(s) not found<br />
collect2: ID returned 1 exit status</p>
<p>diese Meldung tritt doch auf, wenn Prototyp und implementierung nicht übereinstimmen. aber wie müsste man das in diesem fall formulieren?<br />
den gleichen error erhalte ich auch bei den Methoden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042892</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042892</guid><dc:creator><![CDATA[Hyde++ 0]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:37:24 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:39:29 GMT]]></title><description><![CDATA[<p>Hyde++ schrieb:</p>
<blockquote>
<pre><code class="language-cpp">vektor&lt;int&gt; neuerVektor;
</code></pre>
</blockquote>
<p>Das sollte so heissen:</p>
<pre><code class="language-cpp">Vektor&lt;int&gt; neuerVektor;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2042894</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042894</guid><dc:creator><![CDATA[EOutOfResources]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:39:29 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:41:06 GMT]]></title><description><![CDATA[<p>ja, das ist klar.<br />
ist auch richtig bei mir, habs nur falsch gepostet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042896</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042896</guid><dc:creator><![CDATA[Hyde++ 0]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:41:06 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:45:17 GMT]]></title><description><![CDATA[<p>hast du in .h und .cpp getrennt? Wenn ja: FAQ und nach Template Artikel suchen <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="🙂"
    /> ansonsten Regel der 3 googeln (falls nicht bekannt).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042900</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042900</guid><dc:creator><![CDATA[padreigh]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:45:17 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 17:45:41 GMT]]></title><description><![CDATA[<p>Templates gehören typischerweise in den Header. Ich vermute dass dieser bei dir im cpp ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042901</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042901</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Thu, 31 Mar 2011 17:45:41 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Thu, 31 Mar 2011 18:25:55 GMT]]></title><description><![CDATA[<p>okay, danke.<br />
ich hab mir einen artikel nochmal durchgelesen und die implementierung in die .h datei verschoben. ist aber finde ich nicht ganz zufriedenstellend.<br />
im artikel ist noch eine andere methode angegeben, und zwar dass man noch eine zeile hinzufügt.</p>
<blockquote>
<p>The other solution is to leave the definition of the template function in the .cpp file and simply add the line template void foo&lt;int&gt;(); to that file:</p>
</blockquote>
<pre><code class="language-cpp">// File &quot;foo.cpp&quot;
 #include &lt;iostream&gt;
 #include &quot;foo.h&quot;

 template&lt;typename T&gt; void foo()
 {
   std::cout &lt;&lt; &quot;Here I am!\n&quot;;
 }

 template void foo&lt;int&gt;();
</code></pre>
<p>aber mir ist nicht ganz klar, was ich in meinem fall hinufügen muss.</p>
<pre><code class="language-cpp">template Vektor&lt;int&gt;();
</code></pre>
<p>das funktioniert jedenfalls nicht.<br />
außerdem müsste ich ja diese zeile für jeden vorkommenden typ schreiben, oder?<br />
oder könnte man auch</p>
<pre><code class="language-cpp">template void foo&lt;&gt;();
</code></pre>
<p>schreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2042921</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2042921</guid><dc:creator><![CDATA[Hyde++ 0]]></dc:creator><pubDate>Thu, 31 Mar 2011 18:25:55 GMT</pubDate></item><item><title><![CDATA[Reply to Frage zu  Template on Fri, 01 Apr 2011 11:50:04 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">template class Vektor&lt;int&gt;;
</code></pre>
<p>Und ja, das müsstest du für jeden vorkommenden Typ schreiben. Eine Klassenvorlage ist keine Klasse - wenn du ihre Definition dem Compiler nicht da bekannt machen willst, wo er sie brauchen könnte, musst du die Klassen, die er braucht, halt an anderer Stelle aus ihr konkretisieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2043183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2043183</guid><dc:creator><![CDATA[seldon]]></dc:creator><pubDate>Fri, 01 Apr 2011 11:50:04 GMT</pubDate></item></channel></rss>