<?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[Operator Problem. Operator mehrmals includen.]]></title><description><![CDATA[<p>Tagchen !</p>
<p>Zum Speichern mehrerer Strukturen vom Typ meineStruktur, die unterschiedliche Datentypen beinhaltet, benutze ich die Klasse list der STL.</p>
<p>Nach mehrtägigem Forschen und Rumprobieren ist es mir gelungen, einen globalen<br />
operator&lt; fürs Sortieren zu basteln.</p>
<p>Diesen operator&lt; habe ich in einer, nennen wir sie mal aufgrund irrwitzigen<br />
Zeitaufwandes, fukkin_operator.h - Datei deklariert und gleichzeitig definiert:</p>
<pre><code class="language-cpp">// fukkin_operator.h
#ifndef _FUKKIN_OPERATOR_H
#define _FUKKIN_OPERATOR_H
BOOL operator &lt; (const meineStruktur&amp; a ,const meineStruktur&amp; b)
{
   Pseudo-Code:

       vergleiche alle Datentypen von  a und b und liefere entsprechend TRUE    
       oder FALSE;
}
#endif // _FUKKIN_OPERATOR_H
</code></pre>
<p>Wenn ich nun diese fukkin_operator.h - Datei mit #include in eine<br />
Klasse_1.cpp - Datei einbinde,</p>
<pre><code class="language-cpp">// Klasse_1.cpp
  ...
  #include &quot;fukkin_operator.h&quot;
  ...
  Klasse__1::IrgendeineFunktion()
  {
   list &lt;meineStruktur&gt; Liste;
   ...
   Liste.sort();
  }
  ...
</code></pre>
<p>funktioniert das Sortieren der Liste tadellos <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="🙂"
    /><br />
( freu, jubel, jauchz, mirselbstaufdieschulterklopf )</p>
<p>Und jetzt kommt der Karton:</p>
<p>- Karton Einleitung:</p>
<p>Ich tu die fukkin_operator.h - Datei auch in Klasse_2.cpp includieren tun.<br />
Klasse_1.cpp und Klasse_2.cpp sind Bestandteile eines Projekts und mehr oder<br />
weniger voneinander abhängig.<br />
Klasse_1.cpp und Klasse_2.cpp hat also #include fukkin_operator.h</p>
<p>- Karton Definition/Erklärung:</p>
<p>Klasse_2.obj:error: &quot;int __cdecl operator&lt;(struct meineStruktur const<br />
&amp;,struct meineStruktur const &amp;)&quot; (??M@YAHABUmeineStruktur@@0@Z) bereits in<br />
Klasse_1.obj definiert.</p>
<p>- Karton Resultat: :-(((</p>
<p>Wenn der Compiler also schon merkt, das der Operator bereits definiert ist, wieso gibt er sich denn nicht mit meinem schönen Operator zufrieden, wieso meckert die Tröte dann überhaupt rum ?</p>
<p>Hab versucht den Operator extern zu deklarieren, funzt auch nicht. *grummel*<br />
Schaue heute abend wieder rein,<br />
MfG<br />
pro ggingmania</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/120954/operator-problem-operator-mehrmals-includen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 22 Aug 2026 13:51:32 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/120954.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 18 Sep 2005 10:20:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Operator Problem. Operator mehrmals includen. on Sun, 18 Sep 2005 10:20:08 GMT]]></title><description><![CDATA[<p>Tagchen !</p>
<p>Zum Speichern mehrerer Strukturen vom Typ meineStruktur, die unterschiedliche Datentypen beinhaltet, benutze ich die Klasse list der STL.</p>
<p>Nach mehrtägigem Forschen und Rumprobieren ist es mir gelungen, einen globalen<br />
operator&lt; fürs Sortieren zu basteln.</p>
<p>Diesen operator&lt; habe ich in einer, nennen wir sie mal aufgrund irrwitzigen<br />
Zeitaufwandes, fukkin_operator.h - Datei deklariert und gleichzeitig definiert:</p>
<pre><code class="language-cpp">// fukkin_operator.h
#ifndef _FUKKIN_OPERATOR_H
#define _FUKKIN_OPERATOR_H
BOOL operator &lt; (const meineStruktur&amp; a ,const meineStruktur&amp; b)
{
   Pseudo-Code:

       vergleiche alle Datentypen von  a und b und liefere entsprechend TRUE    
       oder FALSE;
}
#endif // _FUKKIN_OPERATOR_H
</code></pre>
<p>Wenn ich nun diese fukkin_operator.h - Datei mit #include in eine<br />
Klasse_1.cpp - Datei einbinde,</p>
<pre><code class="language-cpp">// Klasse_1.cpp
  ...
  #include &quot;fukkin_operator.h&quot;
  ...
  Klasse__1::IrgendeineFunktion()
  {
   list &lt;meineStruktur&gt; Liste;
   ...
   Liste.sort();
  }
  ...
</code></pre>
<p>funktioniert das Sortieren der Liste tadellos <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="🙂"
    /><br />
( freu, jubel, jauchz, mirselbstaufdieschulterklopf )</p>
<p>Und jetzt kommt der Karton:</p>
<p>- Karton Einleitung:</p>
<p>Ich tu die fukkin_operator.h - Datei auch in Klasse_2.cpp includieren tun.<br />
Klasse_1.cpp und Klasse_2.cpp sind Bestandteile eines Projekts und mehr oder<br />
weniger voneinander abhängig.<br />
Klasse_1.cpp und Klasse_2.cpp hat also #include fukkin_operator.h</p>
<p>- Karton Definition/Erklärung:</p>
<p>Klasse_2.obj:error: &quot;int __cdecl operator&lt;(struct meineStruktur const<br />
&amp;,struct meineStruktur const &amp;)&quot; (??M@YAHABUmeineStruktur@@0@Z) bereits in<br />
Klasse_1.obj definiert.</p>
<p>- Karton Resultat: :-(((</p>
<p>Wenn der Compiler also schon merkt, das der Operator bereits definiert ist, wieso gibt er sich denn nicht mit meinem schönen Operator zufrieden, wieso meckert die Tröte dann überhaupt rum ?</p>
<p>Hab versucht den Operator extern zu deklarieren, funzt auch nicht. *grummel*<br />
Schaue heute abend wieder rein,<br />
MfG<br />
pro ggingmania</p>
]]></description><link>https://www.c-plusplus.net/forum/post/874771</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/874771</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Sun, 18 Sep 2005 10:20:08 GMT</pubDate></item><item><title><![CDATA[Reply to Operator Problem. Operator mehrmals includen. on Sun, 18 Sep 2005 10:49:02 GMT]]></title><description><![CDATA[<p>Hallo,<br />
du hast zwei Möglichkeiten:<br />
a) du deklarierst den Operator inline:</p>
<pre><code class="language-cpp">// FREAKIN_operator.h
#ifndef _FREAKIN_OPERATOR_H
#define _FREAKIN_OPERATOR_H
inline BOOL operator &lt; (const meineStruktur&amp; a ,const meineStruktur&amp; b)
{
   Pseudo-Code:

       vergleiche alle Datentypen von  a und b und liefere entsprechend TRUE
       oder FALSE;
}
#endif // _FREAKIN_OPERATOR_H
</code></pre>
<p>b) du definierst den Operator in genau einer Übersetzungseinheit:</p>
<pre><code class="language-cpp">// FREAKIN_operator.h
#ifndef _FREAKIN_OPERATOR_H
#define _FREAKIN_OPERATOR_H

// Deklaration im Header
BOOL operator &lt; (const meineStruktur&amp; a ,const meineStruktur&amp; b);

#endif // _FREAKIN_OPERATOR_H

// FREAKIN_operator.cpp
#include &quot;FREAKIN_operator.h&quot;
// Definition in einer cpp-Datei
BOOL operator &lt; (const meineStruktur&amp; a ,const meineStruktur&amp; b) {

    ...
}
</code></pre>
<p>Weitere Informationen findest du hier:<br />
<a href="http://fara.cs.uni-potsdam.de/~kaufmann/?page=GenCppFaqs&amp;faq=ODR#Answ" rel="nofollow">http://fara.cs.uni-potsdam.de/~kaufmann/?page=GenCppFaqs&amp;faq=ODR#Answ</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/874793</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/874793</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Sun, 18 Sep 2005 10:49:02 GMT</pubDate></item><item><title><![CDATA[Reply to Operator Problem. Operator mehrmals includen. on Sun, 18 Sep 2005 12:16:26 GMT]]></title><description><![CDATA[<p>Vielen Dank für die schnelle Antwort.</p>
<p>Die zweite Möglichkeit gefällt mir am besten, dabei gibt es leider folgende<br />
Fehlermeldungen:</p>
<p>MIST_operator.h(7) : error C2143: Syntaxfehler : Fehlendes ',' vor '&amp;'<br />
MIST_operator.h(7) : error C2059: Syntaxfehler : '&amp;'<br />
MIST_operator.h(7) : error C2803: Operator '&lt;' muss mindestens einen formalen Parameter vom Typ Klasse haben<br />
MIST_operator.h(7) : error C2805: Binaerer Operator '&lt;' hat zu wenig Parameter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/874852</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/874852</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Sun, 18 Sep 2005 12:16:26 GMT</pubDate></item><item><title><![CDATA[Reply to Operator Problem. Operator mehrmals includen. on Sun, 18 Sep 2005 12:26:13 GMT]]></title><description><![CDATA[<p>Deine erste Möglichkeit ( inline ) funktioniert super !</p>
<p>Noch einmal besten Dank !!!!</p>
<p>LG,<br />
proggingmania</p>
]]></description><link>https://www.c-plusplus.net/forum/post/874862</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/874862</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Sun, 18 Sep 2005 12:26:13 GMT</pubDate></item><item><title><![CDATA[Reply to Operator Problem. Operator mehrmals includen. on Sun, 18 Sep 2005 12:29:47 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">// SUPER_KLASSE_operator.h
#ifndef _SUPER_KLASSE_OPERATOR_H
#define _SUPER_KLASSE_OPERATOR_H
inline BOOL operator &lt; (const meineStruktur&amp; a ,const meineStruktur&amp; b)
{
   Pseudo-Code:

       vergleiche alle Datentypen von  a und b und liefere entsprechend TRUE
       oder FALSE;
}
#endif // _SUPER_KLASSE_OPERATOR_H
</code></pre>
<p>jippieeeeeeeeeeeeeeeeeeeeeee dankääääääääääääää</p>
]]></description><link>https://www.c-plusplus.net/forum/post/874865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/874865</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Sun, 18 Sep 2005 12:29:47 GMT</pubDate></item></channel></rss>