<?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[multiple definition of ...]]></title><description><![CDATA[<p>Schönen guten Morgen,</p>
<p>leider stehe ich auf dem Schlauch und daher dieser Weg.</p>
<p>Ich habe ein Template programmiert</p>
<p>class specialContent : public content&lt;QFileInfo&gt; {...}</p>
<p>das ich an zwei Stellen im weiteren Quelltext nutze. Leider gibt es nun die Fehlermeldung</p>
<p>multiple definition of ...</p>
<p>beim linken.</p>
<p>Vielleicht hat jemand eine Idee, würde mich freuen.</p>
<p>Gruß</p>
<p>CASI</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/285740/multiple-definition-of</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 05:13:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/285740.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 27 Apr 2011 06:25:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to multiple definition of ... on Wed, 27 Apr 2011 06:25:38 GMT]]></title><description><![CDATA[<p>Schönen guten Morgen,</p>
<p>leider stehe ich auf dem Schlauch und daher dieser Weg.</p>
<p>Ich habe ein Template programmiert</p>
<p>class specialContent : public content&lt;QFileInfo&gt; {...}</p>
<p>das ich an zwei Stellen im weiteren Quelltext nutze. Leider gibt es nun die Fehlermeldung</p>
<p>multiple definition of ...</p>
<p>beim linken.</p>
<p>Vielleicht hat jemand eine Idee, würde mich freuen.</p>
<p>Gruß</p>
<p>CASI</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2054867</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2054867</guid><dc:creator><![CDATA[CASI]]></dc:creator><pubDate>Wed, 27 Apr 2011 06:25:38 GMT</pubDate></item><item><title><![CDATA[Reply to multiple definition of ... on Wed, 27 Apr 2011 06:38:38 GMT]]></title><description><![CDATA[<p>Da hast du was falsch gemacht, nämlich ... . Wenn du dein &quot;...&quot; ausfüllst, kann dir möglicherweise jemand helfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2054871</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2054871</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Wed, 27 Apr 2011 06:38:38 GMT</pubDate></item><item><title><![CDATA[Reply to multiple definition of ... on Wed, 27 Apr 2011 06:57:07 GMT]]></title><description><![CDATA[<p>multiple definition of.. bedeutet, dass du eine nicht-template Definition in zwei verschiedenen Übersetzungseinheiten hast, vermutlich in einem Header, den du in mehreren .cpps direkt oder indirekt einbindest.<br />
Leider hast du uns keinen Code gezeigt, daher kann man dir keine genauere Antwort geben...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2054876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2054876</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 27 Apr 2011 06:57:07 GMT</pubDate></item><item><title><![CDATA[Reply to multiple definition of ... on Wed, 27 Apr 2011 07:43:23 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">class specialContent : public content&lt;QFileInfo&gt; {

public:
    bool operator &lt; (specialContent than);
    bool operator &gt; (specialContent than);
    bool operator == (specialContent the);

private:

}
</code></pre>
<p>content.h<br />
lautet:</p>
<pre><code class="language-cpp">template &lt;typename t&gt; class content {

public:
    content();
    content(const content&amp; orig);
    virtual ~content();
    bool operator &lt; (content&lt;t&gt; than);
    bool operator == (content&lt;t&gt; the);
    void store(t the);
    t theStored ();

protected:
    t stored;
};
</code></pre>
<p>Ziel dieser Struktur ist, einen anordnenbaren Typ zu schaffen, um ihn in einem Baum oder öhnlichem zu speichern.<br />
Da die Operatoren &quot;&lt;&quot; und &quot;==&quot; vom Templateparameter t abhängen, kann ich die operatoren in der Klasse specialcontent überschreiben.</p>
<p>Ich definiere in einer weiteren Datei die Funktion</p>
<p>int determineDoublette(QList&lt;specialContent&gt; of); ,</p>
<p>die auf den Elementen einer linearen Liste eine Aktion ausführen soll. Ich übergebe einen Zeiger auf diese Funktion an einen Iterator, der diese Funktion dann auf jedem gespeicherten Element aufruft.</p>
<p>In dem Hauptporgramm wird eine dynamische Datenstruktur mit specialContent als template-Parameter instantiiert.</p>
<p>Die Dateim main.cpp sieht also im wesentlichen so aus:</p>
<pre><code class="language-cpp">#include &quot;avl.h&quot; // Ein AVL-Baum, der Listen von Elementen enthält
#include &quot;specialContent.h&quot;
#include &quot;determineDoublette.h&quot;

int main(int argc, char *argv[])
{
    Tree&lt;specialContent&gt; myAvl;
    // befüllen des Baumes
    myAvl.iterate(&amp;determineDoublette); // aufrufen der Funktion           
                                        // determineDoublette
    return 0;
}
</code></pre>
<p>Die Methode iterate ist in der Klasse avl wie folgt deklariert:</p>
<pre><code class="language-cpp">template &lt;class T&gt;
class Tree {

public:

void iterate(int (*iterFunc) (QList&lt;T&gt;));

...

private:

}
</code></pre>
<p>/edit pumuckl: cpp-Tags. Nächstemal bitte selbst machen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2054885</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2054885</guid><dc:creator><![CDATA[CASI]]></dc:creator><pubDate>Wed, 27 Apr 2011 07:43:23 GMT</pubDate></item><item><title><![CDATA[Reply to multiple definition of ... on Wed, 27 Apr 2011 07:47:40 GMT]]></title><description><![CDATA[<ol>
<li>Hast du uns immernoch nicht die vollständige Fehlermeldung gezeigt. Glaskugeln sind grade ausverkauft, daher bitte die komplette Fehlermeldung.</li>
<li>cpp-Tags benutzen (hab ich jetzt einmalig für dich erledigt)</li>
<li>Siehts alles soweit ganz gut aus, ich sehe zumindest nicht, wo das zur multiple definition führen sollte (umso wichtiger ist deshalb die Fehlermeldung)</li>
<li></li>
</ol>
<blockquote>
<p>Ich definiere in einer weiteren Datei die Funktion</p>
<p>int determineDoublette(QList&lt;specialContent&gt; of); ,</p>
</blockquote>
<p>Das ist eine Deklaration. Definierst du die Funktion in einem Header und bindest sie ein? Bezieht sich die Fehlermeldung auf diese Funktion? Dann bitte Code zeigen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2054891</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2054891</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 27 Apr 2011 07:47:40 GMT</pubDate></item></channel></rss>