<?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-Funktionen]]></title><description><![CDATA[<p>Hallo.<br />
Irgendwie habe ich Schwierigkeiten bei der Definition von <code>operator</code> -Funktion. Wenn ich diese in der Hauptdatei definiere, dann klappt alles, aber wenn ich sie in der Header-Datei definiere bekomme ich Errors ueber Errors <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 />
Die Frage: Warum?</p>
<p>Gruss<br />
Cartman</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/234734/operator-funktionen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 08:45:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/234734.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 21 Feb 2009 18:50:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to operator-Funktionen on Sat, 21 Feb 2009 18:50:51 GMT]]></title><description><![CDATA[<p>Hallo.<br />
Irgendwie habe ich Schwierigkeiten bei der Definition von <code>operator</code> -Funktion. Wenn ich diese in der Hauptdatei definiere, dann klappt alles, aber wenn ich sie in der Header-Datei definiere bekomme ich Errors ueber Errors <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 />
Die Frage: Warum?</p>
<p>Gruss<br />
Cartman</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1667726</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1667726</guid><dc:creator><![CDATA[Eric Cartman]]></dc:creator><pubDate>Sat, 21 Feb 2009 18:50:51 GMT</pubDate></item><item><title><![CDATA[Reply to operator-Funktionen on Sat, 21 Feb 2009 18:55:50 GMT]]></title><description><![CDATA[<p>Eric Cartman schrieb:</p>
<blockquote>
<p>Die Frage: Warum?</p>
</blockquote>
<p>Gegenfrage: Welche? (Verwendest du keine Include-Guards?)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1667729</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1667729</guid><dc:creator><![CDATA[franz]]></dc:creator><pubDate>Sat, 21 Feb 2009 18:55:50 GMT</pubDate></item><item><title><![CDATA[Reply to operator-Funktionen on Sat, 21 Feb 2009 19:26:44 GMT]]></title><description><![CDATA[<p>franz schrieb:</p>
<blockquote>
<p>Eric Cartman schrieb:</p>
<blockquote>
<p>Die Frage: Warum?</p>
</blockquote>
<p>Gegenfrage: Welche? (Verwendest du keine Include-Guards?)</p>
</blockquote>
<p>Wenn ich sie in einer CPP-Datei definiere:</p>
<blockquote>
<p>&quot;std::_String_iterator&lt;_Elem,_Traits,_Alloc&gt; std::operator +(_String_iterator&lt;_Elem,_Traits,_Alloc&gt;::difference_type,std::_String_iterator&lt;_Elem,_Traits,_Alloc&gt;)&quot;: template-Argument für &quot;std::_String_iterator&lt;_Elem,_Traits,_Alloc&gt;&quot; konnte nicht von &quot;Rational&quot; hergeleitet werden.</p>
</blockquote>
<p>plus aehnliche...</p>
<p>Wenn ich sie in einer H-Datei definiere, erhalte ich einen Linkerfehler:</p>
<blockquote>
<p>error LNK2005: &quot;class Rational __cdecl operator+(class Rational const &amp;,class Rational const &amp;)&quot; (??H@YA?AVRational@@ABV0@0@Z) ist bereits in main.obj definiert.</p>
</blockquote>
<p>wenn ich sie in der MAIN.CPP definiere, laeuft alles wunderbar.<br />
Die Funktion sieht so aus:</p>
<pre><code class="language-cpp">Rational operator+(const Rational&amp; r1, const Rational&amp; r2)
{
	return Rational(r1.getZaehler()*r2.getNenner()+r2.getZaehler()*r1.getNenner(),
		r1.getNenner()*r2.getNenner());
}
</code></pre>
<p>Also voellig harmlos, eigtl. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1667750</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1667750</guid><dc:creator><![CDATA[Eric Cartman]]></dc:creator><pubDate>Sat, 21 Feb 2009 19:26:44 GMT</pubDate></item><item><title><![CDATA[Reply to operator-Funktionen on Sat, 21 Feb 2009 19:31:53 GMT]]></title><description><![CDATA[<p>Eric Cartman schrieb:</p>
<blockquote>
<blockquote>
<p>error LNK2005: &quot;class Rational __cdecl operator+(class Rational const &amp;,class Rational const &amp;)&quot; (??H@YA?AVRational@@ABV0@0@Z) ist bereits in main.obj definiert.</p>
</blockquote>
<p>wenn ich sie in der MAIN.CPP definiere, laeuft alles wunderbar.</p>
</blockquote>
<p>Die Meldung sagt eigentlich, dass operator+ schon in der main steht. Hast du bei deinen Versuchen vergessen, die operator+ in der main.cpp auszukommentieren, als du sie in den Header gelegt hast?<br />
Falls nein, kannst du es ja mal mit nem <em>make clean</em> versuchen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1667755</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1667755</guid><dc:creator><![CDATA[franz]]></dc:creator><pubDate>Sat, 21 Feb 2009 19:31:53 GMT</pubDate></item><item><title><![CDATA[Reply to operator-Funktionen on Sat, 21 Feb 2009 19:35:47 GMT]]></title><description><![CDATA[<p>franz schrieb:</p>
<blockquote>
<p>Eric Cartman schrieb:</p>
<blockquote>
<blockquote>
<p>error LNK2005: &quot;class Rational __cdecl operator+(class Rational const &amp;,class Rational const &amp;)&quot; (??H@YA?AVRational@@ABV0@0@Z) ist bereits in main.obj definiert.</p>
</blockquote>
<p>wenn ich sie in der MAIN.CPP definiere, laeuft alles wunderbar.</p>
</blockquote>
<p>Die Meldung sagt eigentlich, dass operator+ schon in der main steht. Hast du bei deinen Versuchen vergessen, die operator+ in der main.cpp auszukommentieren, als du sie in den Header gelegt hast?<br />
Falls nein, kannst du es ja mal mit nem <em>make clean</em> versuchen.</p>
</blockquote>
<p>Nein, das ist es leider nicht. Also liegt es wohl am Compiler? (MSVC2008Express)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1667757</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1667757</guid><dc:creator><![CDATA[Eric Cartman]]></dc:creator><pubDate>Sat, 21 Feb 2009 19:35:47 GMT</pubDate></item><item><title><![CDATA[Reply to operator-Funktionen on Sat, 21 Feb 2009 19:55:18 GMT]]></title><description><![CDATA[<p>Eric Cartman schrieb:</p>
<blockquote>
<p>Nein, das ist es leider nicht. Also liegt es wohl am Compiler? (MSVC2008Express)</p>
</blockquote>
<p>Nein, du hast vermutlich die Elementfunktion im Header außerhalb der Klasse definiert. Dadurch landet sie wohl vermutlich mehrmals in den Übersetzungseinheiten:</p>
<p>Abhilfe: <a href="http://c-plusplus.net/forum/viewtopic-var-p-is-1666763.html#1666763" rel="nofollow">http://c-plusplus.net/forum/viewtopic-var-p-is-1666763.html#1666763</a><br />
Anmerkung: Wenn du die Elementfunktion in der Klassendefinition definierst, ist sie implizit inline.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1667777</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1667777</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 21 Feb 2009 19:55:18 GMT</pubDate></item><item><title><![CDATA[Reply to operator-Funktionen on Sat, 21 Feb 2009 20:12:20 GMT]]></title><description><![CDATA[<p>@KasF<br />
War zwar keine Elementfunktion, aber bin dadurch auf die Loesung gekommen. Deklaratin in der Header-Datei und Definition in der entsprechenden CPP-Datei... sowas muss ich mir echt mal merken <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="🙂"
    /> danke fuer die Hilfe</p>
<p>Gruss<br />
Cartman</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1667789</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1667789</guid><dc:creator><![CDATA[Eric Cartman]]></dc:creator><pubDate>Sat, 21 Feb 2009 20:12:20 GMT</pubDate></item></channel></rss>