<?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 überladen]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein kleines Problem in C++ bei dem ich leider nicht weiter komme.</p>
<p>Es soll folgendes aufgerufen werden: Klasse1 + 2 * Klasse1::KLASSE2;</p>
<p>Klasse 1 sieht wie folgt aus:</p>
<p>class Klasse1 {</p>
<p>public:<br />
static Klasse2 KLASSE2;</p>
<p>};</p>
<p>class Klasse2 {<br />
public:<br />
static int nummer();<br />
}</p>
<p>int Klasse2::nummer(){return 1;}</p>
<p>Nun zu meiner eigentlichen Frage. Ich müsste ja den Operator überladen, um 2* Klasse1::KLASSE2 ausführen zu können. Doch leider hab ich keinen Ahnung wie es hier funktionieren soll.</p>
<p>Probiert habe ich es unter anderem so:</p>
<p>friend Klasse1 operator* (const Klasse2 b, const int i)<br />
{<br />
//.….</p>
<p>}</p>
<p>Wäre super, wenn mir jemand helfen könnte.</p>
<p>Danke schon mal!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/304479/operator-überladen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 09 Aug 2026 18:45:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/304479.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 07 Jun 2012 10:05:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 10:05:27 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein kleines Problem in C++ bei dem ich leider nicht weiter komme.</p>
<p>Es soll folgendes aufgerufen werden: Klasse1 + 2 * Klasse1::KLASSE2;</p>
<p>Klasse 1 sieht wie folgt aus:</p>
<p>class Klasse1 {</p>
<p>public:<br />
static Klasse2 KLASSE2;</p>
<p>};</p>
<p>class Klasse2 {<br />
public:<br />
static int nummer();<br />
}</p>
<p>int Klasse2::nummer(){return 1;}</p>
<p>Nun zu meiner eigentlichen Frage. Ich müsste ja den Operator überladen, um 2* Klasse1::KLASSE2 ausführen zu können. Doch leider hab ich keinen Ahnung wie es hier funktionieren soll.</p>
<p>Probiert habe ich es unter anderem so:</p>
<p>friend Klasse1 operator* (const Klasse2 b, const int i)<br />
{<br />
//.….</p>
<p>}</p>
<p>Wäre super, wenn mir jemand helfen könnte.</p>
<p>Danke schon mal!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220544</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220544</guid><dc:creator><![CDATA[agbt]]></dc:creator><pubDate>Thu, 07 Jun 2012 10:05:27 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 10:08:52 GMT]]></title><description><![CDATA[<p>Da du 2 * Klasse1::KLASSE2 schreibst, musst du den int auch als ersten Parameter bei deinem Operator verwenden.</p>
<p>Aber was soll denn <code>Klasse1 + 2 * Klasse1::KLASSE2</code> bedeuten? Du kannst doch nicht eine Klasse mit einem Objekt addieren. Und warum nennst du ein Objekt KLASSE2 und nicht objekt2 oder vielleicht sogar vernünftig?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220548</guid><dc:creator><![CDATA[wxSkip]]></dc:creator><pubDate>Thu, 07 Jun 2012 10:08:52 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 10:15:24 GMT]]></title><description><![CDATA[<p>Danke schon mal für deine Antwort.<br />
Selbst wenn ich int als erstes übergebe funktioniert es nicht.</p>
<p>Klasse 1 sind eigentlich Atomkerne. In Klasse 2 sind Neutronen.</p>
<p>Damit ist es jetzt glaube ich besser verständlich was Klasse1 + 2 * Klasse1::KLASSE2 bedeuten soll.</p>
<p>Ich habe bereits einen Operator, der Atomkern mit Neutron addieren kann. Nur die Multiplikation mit dem Neutron bekomm ich nicht hin.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220551</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220551</guid><dc:creator><![CDATA[agbt]]></dc:creator><pubDate>Thu, 07 Jun 2012 10:15:24 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 10:18:03 GMT]]></title><description><![CDATA[<p>agbt schrieb:</p>
<blockquote>
<p>Danke schon mal für deine Antwort.<br />
Selbst wenn ich int als erstes übergebe funktioniert es nicht.</p>
<p>Klasse 1 sind eigentlich Atomkerne. In Klasse 2 sind Neutronen.</p>
<p>Damit ist es jetzt glaube ich besser verständlich was Klasse1 + 2 * Klasse1::KLASSE2 bedeuten soll.</p>
<p>Ich habe bereits einen Operator, der Atomkern mit Neutron addieren kann. Nur die Multiplikation mit dem Neutron bekomm ich nicht hin.</p>
</blockquote>
<p>Zeig doch mal den Code. Außerdem kannst du keine Klasse addieren, nur ein Objekt der Klasse. Meinst du vielleicht <code>Klasse1() + 2 * Klasse1::KLASSE2</code> ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220552</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220552</guid><dc:creator><![CDATA[wxSkip]]></dc:creator><pubDate>Thu, 07 Jun 2012 10:18:03 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 11:09:15 GMT]]></title><description><![CDATA[<p>erledigt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220554</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220554</guid><dc:creator><![CDATA[agbt]]></dc:creator><pubDate>Thu, 07 Jun 2012 11:09:15 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 10:40:17 GMT]]></title><description><![CDATA[<p>-Hör auf, deine Parameter const zu machen. const-Referenzen sind sinnvoll, const-Parameter nicht.<br />
-Objekte sollte man nicht in CAPS LOCK schreiben. Das wird per Konvention nur für Makros benutzt.<br />
-Mach lieber eine Klasse Elementarteilchen und lege davon die Objekte Proton, Neutron und Elektron an. (oder du machst eine enum{proton, neutron, elektron}, die du dann im Konstruktor übergibst.<br />
-Poste deinen Code so:<br />
[cpp]<br />
code<br />
[/cpp]<br />
-und dann lies dir das durch: <a href="http://www.c-plusplus.net/forum/304133" rel="nofollow">http://www.c-plusplus.net/forum/304133</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220556</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220556</guid><dc:creator><![CDATA[wxSkip]]></dc:creator><pubDate>Thu, 07 Jun 2012 10:40:17 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 10:43:30 GMT]]></title><description><![CDATA[<p>Okay das mit dem const werde ich ändern.</p>
<p>Punkt 2 &amp; 3 sind so vorgegeben, daran kann ich leider nichts ändern.</p>
<p>Punkt 4: Werde ich in Zukunft berücksichtigen</p>
<p>Hast du noch eine Idee, wie man diese Multiplikation realisieren könnte?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220557</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220557</guid><dc:creator><![CDATA[agbt]]></dc:creator><pubDate>Thu, 07 Jun 2012 10:43:30 GMT</pubDate></item><item><title><![CDATA[Reply to Operator überladen on Thu, 07 Jun 2012 10:54:34 GMT]]></title><description><![CDATA[<p>agbt schrieb:</p>
<blockquote>
<p>Hast du noch eine Idee, wie man diese Multiplikation realisieren könnte?</p>
</blockquote>
<p>Schau dir mal folgendes an: <a href="http://magazin.c-plusplus.net/artikel/%DCberladung%20von%20Operatoren%20in%20CPlusPlus%20%28Teil%201%29" rel="nofollow">http://magazin.c-plusplus.net/artikel/�berladung von Operatoren in CPlusPlus (Teil 1)</a></p>
<p>Wenn dann noch Fragen da sind, Code posten und konkrete Fragen stellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2220559</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2220559</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Thu, 07 Jun 2012 10:54:34 GMT</pubDate></item></channel></rss>