<?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[Probleme mit Templates]]></title><description><![CDATA[<p>Also, mein Code:</p>
<pre><code># ifndef __QUICKSORT_HEADER__
# define __QUICKSORT_HEADER__

#include &lt;vector&gt;
#include &lt;iostream&gt;

using namespace std;

template &lt;class clst=double&gt; class sortMachine {
    public:void out(vector&lt;clst&gt;&amp; a) {
        // Fehler tritt in der nächsten Zeile auf!
        for(vector &lt;clst&gt;::iterator it = a.begin(); it != a.end(); it++) {
            cout &lt;&lt; *(it) &lt;&lt; &quot; &quot;;
        }
    }
};
# endif
</code></pre>
<p>Das Problem is die Zeile nach dem Kommentar. Wenn ich statt &quot;clst&quot; z.b. &quot;double&quot; reinschreib, dann tuts. Da ich aber nich weiß ob ich nen double, int oder sonst was als Argument hab, muss ich das irgendwie umgehn. was kann ich da machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/130792/probleme-mit-templates</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 16:15:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/130792.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 27 Dec 2005 14:59:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 14:59:04 GMT]]></title><description><![CDATA[<p>Also, mein Code:</p>
<pre><code># ifndef __QUICKSORT_HEADER__
# define __QUICKSORT_HEADER__

#include &lt;vector&gt;
#include &lt;iostream&gt;

using namespace std;

template &lt;class clst=double&gt; class sortMachine {
    public:void out(vector&lt;clst&gt;&amp; a) {
        // Fehler tritt in der nächsten Zeile auf!
        for(vector &lt;clst&gt;::iterator it = a.begin(); it != a.end(); it++) {
            cout &lt;&lt; *(it) &lt;&lt; &quot; &quot;;
        }
    }
};
# endif
</code></pre>
<p>Das Problem is die Zeile nach dem Kommentar. Wenn ich statt &quot;clst&quot; z.b. &quot;double&quot; reinschreib, dann tuts. Da ich aber nich weiß ob ich nen double, int oder sonst was als Argument hab, muss ich das irgendwie umgehn. was kann ich da machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950817</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 14:59:04 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:02:01 GMT]]></title><description><![CDATA[<p>der code funzt!!!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950818</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950818</guid><dc:creator><![CDATA[tester12345]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:02:01 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:05:23 GMT]]></title><description><![CDATA[<p>Kein using im header!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950821</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950821</guid><dc:creator><![CDATA[leo_]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:05:23 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:06:19 GMT]]></title><description><![CDATA[<p>tester12345 schrieb:</p>
<blockquote>
<p>der code funzt!!!!!</p>
</blockquote>
<p>Naaaa, tut er leider nicht....<br />
Ich bekomme folgende Fehler:</p>
<p>expected ';' before &quot;it&quot; (Line 12)<br />
'it' undeclared (firest use of function) (Line 12)</p>
<p>Wobei eben Line 12 die oben beschriebene Zeile is...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950823</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950823</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:06:19 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:07:15 GMT]]></title><description><![CDATA[<p>gib mal vollständigen code. also mit main!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950826</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950826</guid><dc:creator><![CDATA[tester12345]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:07:15 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:07:41 GMT]]></title><description><![CDATA[<p>Wenn es kein double sondern int sein soll musst du sortMachine&lt;int&gt; benutzen.<br />
Oder versteh ich deine Frage falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950827</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950827</guid><dc:creator><![CDATA[Konrad]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:07:41 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:07:42 GMT]]></title><description><![CDATA[<p>leo_ schrieb:</p>
<blockquote>
<p>Kein using im header!</p>
</blockquote>
<p>wo soll ich das using dann &quot;platzieren&quot;?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950828</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950828</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:07:42 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:09:17 GMT]]></title><description><![CDATA[<p>leo_ schrieb:</p>
<blockquote>
<p>Kein using im header!</p>
</blockquote>
<p>und ganz ohne using gibts nen fehler, dass vector nicht deklariert sei.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950829</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950829</guid><dc:creator><![CDATA[rofl]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:09:17 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:10:35 GMT]]></title><description><![CDATA[<blockquote>
<p><strong>im header</strong></p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/950832</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950832</guid><dc:creator><![CDATA[leo______]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:10:35 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:11:59 GMT]]></title><description><![CDATA[<pre><code>// Datei: quicksort.cpp

# ifndef __QUICKSORT_HEADER__
# define __QUICKSORT_HEADER__

#include &lt;vector&gt;
#include &lt;iostream&gt;

using namespace std;

template &lt;class clst=double&gt; class sortMachine {

private:void swap(clst&amp; a, clst&amp; b) {
    double t=a;
    a=b;
    b=t;
}

private:int partition(vector &lt;clst&gt;&amp; a, int s, int t) {

    // Funktionsweise:
    // Bsp:
    // Reihe (erstes Element=Position 0) :
    // 5,3,6,1,7,3,2 -&gt; Pivot Elem=5
    // Schleife {
    //  1.Schritt: 3&lt;5 -&gt; jop, vertausche Pos 1 mit der 1. Pos
    //  2.Schritt: 6&lt;5 -&gt; nein, passt.
    //  3.Schritt: 1&lt;5 -&gt; jop, vertausche Pos 3 mit der 2. Pos
    //  4.Schritt: 7&lt;5 -&gt; nein, passt.
    //  5.Schritt: 3&lt;5 -&gt; jop, vertausche Pos 5 mit der 3. Pos
    //  6.Schritt: 2&lt;5 -&gt; jop, vertausche Pos 6 mit der 4. Pos
    // }
    // Nach Schleife: 5,3,1,3,2,6,7
    // Nun noch das erste Element (Pivotelement) mit dem letzten getauschten
    // Element (hier: 2) vertauschen.
    //
    // Prinzip:
    // Die Reihe wird durchgegangen. Wenn ein Element kleiner als das Pivotelement ist,
    // so wird ein Counter erhöht und das Elemnt dahin getauscht.
    // Der Counter ist also die rechte Begrenzung des ersten Sub-Arrays mit den
    // Elemnten kleiner als das Pivotelement.

    clst pivot=a[s];              // Pivot Elemnt = Unterstes Element
    int l = s;
    for(int i=s+1; i &lt;= t; i++) {   // Schleife
        if (a[i] &lt; pivot) {
            l++;                    // Counter erhöhen
            swap (a[i],a[l]);
        }
    }
    swap(a[s],a[l]);                // Vertausche erstes Element (Pivot) mit dem Element an Pos l
    return l;
}

public:void out(vector&lt;clst&gt;&amp; a) {
    for(vector &lt;clst&gt;::iterator it = a.begin(); it != a.end(); it++) {
        cout &lt;&lt; *(it) &lt;&lt; &quot; &quot;;
    }
}

public:void createList (vector&lt;clst&gt;&amp; a, int elems) {
    for (int i=1; i&lt;=elems; i++)
        a.push_back(rand()%101);
}

public:void quicksort(vector &lt;clst&gt;&amp; a, int s, int t) {
    int m;
    if (s &lt; t) {
        m = partition(a, s, t);
        quicksort(a, s, m-1);
        quicksort(a, m+1, t);
    }
}
};
# endif
</code></pre>
<pre><code>// Datei: main.cpp

#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;stdlib.h&gt;
#include &lt;time.h&gt;

#include &quot;quicksort.cpp&quot;

using namespace std;

int main() {
    vector &lt;double&gt; arr(0);
    sortMachine &lt;double&gt; sorter;

    srand (time(NULL));

    //sorter.createList(arr,1000);
    //sorter.quicksort(arr, 0, 1000);
    //sorter.out(arr);

    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/950833</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950833</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:11:59 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:16:41 GMT]]></title><description><![CDATA[<p>Du faules Stück schreib im Header std davor!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950838</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950838</guid><dc:creator><![CDATA[...]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:16:41 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:18:53 GMT]]></title><description><![CDATA[<p>... schrieb:</p>
<blockquote>
<p>Du faules Stück schreib im Header std davor!</p>
</blockquote>
<p>XD würde ich machen, wenn ich wüsste was geanu du damit meinst....</p>
<p>Ich soll wo genau das std platzieren? Und dann solls tun?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950841</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:18:53 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:24:57 GMT]]></title><description><![CDATA[<p>Und jetzt noch den Code rausmachen der nix mit dem Problem zu tun hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950846</guid><dc:creator><![CDATA[tester12345]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:24:57 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:29:14 GMT]]></title><description><![CDATA[<pre><code>// Datei: quicksort.cpp
# ifndef __QUICKSORT_HEADER__
# define __QUICKSORT_HEADER__

#include &lt;vector&gt;
#include &lt;iostream&gt;

using namespace std;

template &lt;class clst=double&gt; class sortMachine {
public:void out(vector&lt;clst&gt;&amp; a) {
    for(vector&lt;clst&gt;::iterator it = a.begin(); it != a.end(); it++) {
        cout &lt;&lt; *(it) &lt;&lt; &quot; &quot;;
    }
}
};
# endif
</code></pre>
<pre><code>#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;stdlib.h&gt;
#include &lt;time.h&gt;

#include &quot;quicksort.cpp&quot;

using namespace std;

int main() {
    vector &lt;double&gt; arr(0);
    sortMachine &lt;double&gt; sorter;

    for (int i=0; i&lt;100; i++)
        arr.push_back(rand()%101);

    sorter.out(arr);

    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/950851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950851</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:29:14 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:31:29 GMT]]></title><description><![CDATA[<p>Das Problem is eben, dass ich nen Fehler inder Datei quicksort.cpp bekomm, da irgendwas an dem &quot;...vector &lt;clst&gt;::iterator it...&quot; nicht passt.</p>
<p>die Meldung:</p>
<p>expected ';' before &quot;it&quot; (Line 12, quicksort.cpp)<br />
'it' undeclared (first use of function)</p>
<p>wenn ich nun aber das clst ersetze durch z.B. double, dann tuts.....das will ich aber nicht!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950853</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950853</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:31:29 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:54:04 GMT]]></title><description><![CDATA[<p>meine eMail-Addy is:</p>
<p><a href="mailto:cocii@gmx.de" rel="nofollow">cocii@gmx.de</a></p>
<p>Wenn jemand weiß wie's tut, kann er mir auch ne mail schicken....wär super nett. ^^ Sitz jetzt schon ewig an dem Problem.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950865</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:54:04 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 15:58:23 GMT]]></title><description><![CDATA[<p>Kleines Beispiel:</p>
<pre><code class="language-cpp">#include &lt;vector&gt;
#include &lt;iostream&gt;

using namespace std;

template&lt; typename t = double &gt;
struct foo
{
	void bar( vector&lt; t &gt;&amp; b )
	{
		vector&lt; t &gt;::iterator it = b.begin();
		cout &lt;&lt; *it &lt;&lt; &quot; &quot;;
	}
};

int main()
{
	vector&lt; int &gt; a;
	a.push_back( 1 );
	foo&lt; int &gt; b;
	b.bar( a );

	vector&lt; double &gt; c;
	c.push_back( 1.2 );
	foo&lt;&gt; d;
	d.bar( c );
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/950867</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950867</guid><dc:creator><![CDATA[...]]></dc:creator><pubDate>Tue, 27 Dec 2005 15:58:23 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 16:04:29 GMT]]></title><description><![CDATA[<p>... schrieb:</p>
<blockquote>
<p>Kleines Beispiel:</p>
<pre><code class="language-cpp">#include &lt;vector&gt;
#include &lt;iostream&gt;

using namespace std;

template&lt; typename t = double &gt;
struct foo
{
	void bar( vector&lt; t &gt;&amp; b )
	{
		vector&lt; t &gt;::iterator it = b.begin();   //&lt;---
		cout &lt;&lt; *it &lt;&lt; &quot; &quot;;
	}
};

int main()
{
	vector&lt; int &gt; a;
	a.push_back( 1 );
	foo&lt; int &gt; b;
	b.bar( a );

	vector&lt; double &gt; c;
	c.push_back( 1.2 );
	foo&lt;&gt; d;
	d.bar( c );
}
</code></pre>
</blockquote>
<p>Genau das geliche Problem. Tut nur, wenn ich in der Zeile die ich mit &quot;&lt;---&quot; markiert hab das &quot;&lt; t &gt;&quot; durch z.b. &quot;&lt; int &gt;&quot; ersetze (gut, das beispiel rennt dann nicht, weil ich in der main funktion das ganze mal mit double aufrufe...aber sonst würds tun.).</p>
<p>Kann das ne Compilereinstellungssache sein?</p>
<p>Hier mal screenshot mit den fehlern....:<br />
<a href="http://www.itak.de/screen.jpg" rel="nofollow">http://www.itak.de/screen.jpg</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/950876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950876</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 16:04:29 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 16:05:57 GMT]]></title><description><![CDATA[<p>Hab den Code mit vc71 getestet und kompiliert anstandslos. Welchen Compiler verwendest du?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950878</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950878</guid><dc:creator><![CDATA[...]]></dc:creator><pubDate>Tue, 27 Dec 2005 16:05:57 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 16:08:02 GMT]]></title><description><![CDATA[<p>ich benutze den GNU GCC (C++) Compiler...tut nich.... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>(-&gt; Vllt hilft der screenshot (URL siehe oben))</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950882</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950882</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 16:08:02 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 16:11:08 GMT]]></title><description><![CDATA[<p>Schreib typename vor die markierte Zeile</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950884</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950884</guid><dc:creator><![CDATA[kennnnnnner]]></dc:creator><pubDate>Tue, 27 Dec 2005 16:11:08 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 16:12:04 GMT]]></title><description><![CDATA[<p>steht übrigens auch in der fehlermeldung. wer lesen kann ist klar im vorteil.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950885</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950885</guid><dc:creator><![CDATA[kennnnnnner]]></dc:creator><pubDate>Tue, 27 Dec 2005 16:12:04 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit Templates on Tue, 27 Dec 2005 16:17:24 GMT]]></title><description><![CDATA[<p>Yey!</p>
<p>es tut! ^^ Fettes merci an alle!</p>
<p>Ok, das mit dem 'typename' hätt ich lesen können, stimmt.... <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>Aber:</p>
<p>1. Warum kompiliert Vc71 das ohne typename?<br />
2. Was macht typename überhaupt??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/950891</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/950891</guid><dc:creator><![CDATA[der Peter]]></dc:creator><pubDate>Tue, 27 Dec 2005 16:17:24 GMT</pubDate></item></channel></rss>