<?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[Kann man eigene Operatoren erstellen ?]]></title><description><![CDATA[<p>Hallo,</p>
<p>mal ne ganz kurze Frage ( hoffe ich )</p>
<p>Ich lese gerade das man Operatoren überladen kann.<br />
Ihr wisst sicher wie, keine frage.</p>
<p>Allerdings hab ich noch nicht gefunden ob man auch einen eigenen Operator erstellen könnte ?<br />
Geht das ?</p>
<p>Sagen wir ich habe hier meine TestKlasse, die einfach nur einen Long Wert hält.<br />
Jetzt ( als Beispiel ) möchte ich einen ( mit absicht ) etwas merkwürdig aussehenden eigenen Operator haben, sagen wir der soll so aus 2 Pluszeichen und einem * Zeichen bestehen <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 />
Er bekommt 3 Werte übergeben und Addiert die ersten beiden und Multipliziert diese dann mit dem dritten...nur mal asl Bsp.</p>
<p>Ich möchte aber nur wissen ob man solch einen Eigenen Operator erstellen könnte, nicht wie man das problem (a+b)*c lösen kann.</p>
<p>Matthias</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/170515/kann-man-eigene-operatoren-erstellen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 03:33:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/170515.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 17 Jan 2007 00:14:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 00:14:05 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>mal ne ganz kurze Frage ( hoffe ich )</p>
<p>Ich lese gerade das man Operatoren überladen kann.<br />
Ihr wisst sicher wie, keine frage.</p>
<p>Allerdings hab ich noch nicht gefunden ob man auch einen eigenen Operator erstellen könnte ?<br />
Geht das ?</p>
<p>Sagen wir ich habe hier meine TestKlasse, die einfach nur einen Long Wert hält.<br />
Jetzt ( als Beispiel ) möchte ich einen ( mit absicht ) etwas merkwürdig aussehenden eigenen Operator haben, sagen wir der soll so aus 2 Pluszeichen und einem * Zeichen bestehen <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 />
Er bekommt 3 Werte übergeben und Addiert die ersten beiden und Multipliziert diese dann mit dem dritten...nur mal asl Bsp.</p>
<p>Ich möchte aber nur wissen ob man solch einen Eigenen Operator erstellen könnte, nicht wie man das problem (a+b)*c lösen kann.</p>
<p>Matthias</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211064</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211064</guid><dc:creator><![CDATA[STF-DIR]]></dc:creator><pubDate>Wed, 17 Jan 2007 00:14:05 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 01:08:25 GMT]]></title><description><![CDATA[<p>Naja, dann ist die Antwort schlicht: Nein, geht nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211070</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211070</guid><dc:creator><![CDATA[HyperSonic]]></dc:creator><pubDate>Wed, 17 Jan 2007 01:08:25 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 07:18:11 GMT]]></title><description><![CDATA[<p>Oder ausführlicher: Du darfst (fast) alle vorhandenen Operatoren überladen (nur wenn benutzerdefinierte Typen beteiligt sind), aber du darfst weder neue Operatoren erzeugen noch darfst du die Rangfolge der Operatoren beeinflussen.</p>
<p>Aber du könntest dir eventuell über Proxies aus den vorhandenen Operatoren etwas eigenes zusammenbauen:</p>
<pre><code class="language-cpp">struct Proxie
{
  const TestKlasse &amp;op2,&amp;op3;
  Proxie(const TestKlasse&amp; o2,const TestKlasse&amp; o3): op2(o2),op3(o3) {}
};

Proxie operator*(const TestKlasse&amp; op2, const TestKlasse&amp; op3)
{
  return Proxie(op2,op3);
}

TestKlasse operator+(const TestKlasse&amp; op1,const Proxie&amp; rest)
{
  return (op1+rest.op2)*rest.op3;
}

...
TestKlasse a,b,c;
TestKlasse d = a+b*c;
</code></pre>
<p>(Achtung, das ist nur hingeschludert - ich übernehme keine Garantie für den Code)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211104</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211104</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 17 Jan 2007 07:18:11 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 09:07:25 GMT]]></title><description><![CDATA[<p>Wenn DAS möglich wäre, dann würden wir nocht mehr und noch längere &quot;Java vs. C++&quot; Threads haben. Denn dann wäre C++ ja noch komplexer, als es vielen Leuten sowieso schon ist. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1211182</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211182</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Wed, 17 Jan 2007 09:07:25 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 09:11:21 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich danke euch für die Ausführungen.<br />
Die zweite Antwort schau ich mir später nochmal an, die ist für jetzt noch zu kompliziert und ich will auch nicht so weit vom &quot;Stoff&quot; abkommen.</p>
<p>ALso danke Euch !</p>
<p>Matthias</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211187</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211187</guid><dc:creator><![CDATA[STF-DIR]]></dc:creator><pubDate>Wed, 17 Jan 2007 09:11:21 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 09:12:57 GMT]]></title><description><![CDATA[<p>Artchi schrieb:</p>
<blockquote>
<p>Wenn DAS möglich wäre, dann würden wir nocht mehr und noch längere &quot;Java vs. C++&quot; Threads haben. Denn dann wäre C++ ja noch komplexer, als es vielen Leuten sowieso schon ist. <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>
</blockquote>
<p>... ich würde mal sagen: Wenn das möglich wäre, würde ein Haufen alten Codes tot an der &quot;maximal-munch-Hürde&quot; liegen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211189</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211189</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Wed, 17 Jan 2007 09:12:57 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 10:21:35 GMT]]></title><description><![CDATA[<p>mach doch einfach ne template funktion wo du den funktionsnamen statt &quot;++*&quot; ein &quot;ppm&quot; gibst welches das ergebnis retuniert</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211235</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211235</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Wed, 17 Jan 2007 10:21:35 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 10:36:03 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>so etwa :</p>
<pre><code class="language-cpp">template&lt;typename Typ&gt;
Typ ppm(Typ x, Typ y, Typ z)
{
	return((x+y)*z);
}
</code></pre>
<p>Jap, würde, wie im ersten Posting schon erwähnt, das Problem lösen.<br />
Die Frage war aber eigentlich nur ob das geht, also ob man direkt einen neuen Operator erstellen kann.<br />
Die ist beantwortet ... geht nicht, also ok,</p>
<p>Trotzdem nochmals Danke<br />
Matthias</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211243</guid><dc:creator><![CDATA[STF-DIR]]></dc:creator><pubDate>Wed, 17 Jan 2007 10:36:03 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 11:27:25 GMT]]></title><description><![CDATA[<p>Allerdings wird a++*b als (a++)*b gelesen. Man könnte also ++ und * so überladen, dass sie zusammen das gewünschte erledigen. <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="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1211290</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211290</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Wed, 17 Jan 2007 11:27:25 GMT</pubDate></item><item><title><![CDATA[Reply to Kann man eigene Operatoren erstellen ? on Wed, 17 Jan 2007 14:49:50 GMT]]></title><description><![CDATA[<p>Jetzt setzt ihm doch nicht auch noch solche Flausen in den Kopf <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1211427</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1211427</guid><dc:creator><![CDATA[HyperSonic]]></dc:creator><pubDate>Wed, 17 Jan 2007 14:49:50 GMT</pubDate></item></channel></rss>