<?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 overload]]></title><description><![CDATA[<p>wie schaffe ich es mit den &quot;operator&quot;-befehl<br />
so was zu machen</p>
<pre><code class="language-cpp">class My{
  int x;
  int y;
  My();
  void setx(int xx);
  void sety(int yy);
}
My::My():y(0),y(0){}
void My::setx(int xx){x=xx;}
void My::sety(int yy){y=yy;}
</code></pre>
<p>an stadt jetzt immer diese set zu schreiben könnte man doch<br />
irgetn wie so was machen</p>
<pre><code class="language-cpp">class My{
  int x;
  int y;
  My();
  void x operator=(int xx);
  void y operator=(int yy);
}
My::My():y(0),y(0){}
void My::x operator=(int xx){x=xx;}
void My::y operator=(int yy){y=yy;}
//oder so ähnlich
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/199310/operator-overload</link><generator>RSS for Node</generator><lastBuildDate>Sat, 03 Oct 2026 14:25:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/199310.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 01 Dec 2007 11:07:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to operator overload on Sat, 01 Dec 2007 11:07:22 GMT]]></title><description><![CDATA[<p>wie schaffe ich es mit den &quot;operator&quot;-befehl<br />
so was zu machen</p>
<pre><code class="language-cpp">class My{
  int x;
  int y;
  My();
  void setx(int xx);
  void sety(int yy);
}
My::My():y(0),y(0){}
void My::setx(int xx){x=xx;}
void My::sety(int yy){y=yy;}
</code></pre>
<p>an stadt jetzt immer diese set zu schreiben könnte man doch<br />
irgetn wie so was machen</p>
<pre><code class="language-cpp">class My{
  int x;
  int y;
  My();
  void x operator=(int xx);
  void y operator=(int yy);
}
My::My():y(0),y(0){}
void My::x operator=(int xx){x=xx;}
void My::y operator=(int yy){y=yy;}
//oder so ähnlich
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1413280</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1413280</guid><dc:creator><![CDATA[kiba91]]></dc:creator><pubDate>Sat, 01 Dec 2007 11:07:22 GMT</pubDate></item><item><title><![CDATA[Reply to operator overload on Sat, 01 Dec 2007 11:15:33 GMT]]></title><description><![CDATA[<p>Du meinst also einen Zuweisungsoperator schreiben?</p>
<p>Normalerweise ist ein solcher Operator in jeder Klasse standardmäßig vorhanden,<br />
aber ich glaube man braucht für dynamisch erzeugte Objekte einen extra Operator,<br />
weil dann beide Objekte auf den selben Speicherplatz zeigen.</p>
<p>Ich schau mal in mein C++-Buch...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1413282</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1413282</guid><dc:creator><![CDATA[*D*]]></dc:creator><pubDate>Sat, 01 Dec 2007 11:15:33 GMT</pubDate></item><item><title><![CDATA[Reply to operator overload on Sat, 01 Dec 2007 11:19:55 GMT]]></title><description><![CDATA[<p>Yepp,<br />
du brauchst einen solchen Operator nur für dynamische Objekte.<br />
Du musst dabei aber überprüfen, ob eine solche Zuweisung wie</p>
<pre><code class="language-cpp">objekt = objekt;
</code></pre>
<p>stattfindet. Mit this kannst du das dann abfragen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1413284</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1413284</guid><dc:creator><![CDATA[*D*]]></dc:creator><pubDate>Sat, 01 Dec 2007 11:19:55 GMT</pubDate></item><item><title><![CDATA[Reply to operator overload on Sat, 01 Dec 2007 11:20:49 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Nein das geht nicht. Operatoren sind immer von einer Klasse abhängig, nicht von Membervariablen der Klasse.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1413285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1413285</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 01 Dec 2007 11:20:49 GMT</pubDate></item><item><title><![CDATA[Reply to operator overload on Sat, 01 Dec 2007 11:28:21 GMT]]></title><description><![CDATA[<p>Du kannst nur genau einen Operator mit gleichem Parameter angeben, nicht mehrere (dies gilt generell für Funktionen).<br />
Aber zu einen ist deine Syntax falsch, und zum anderen gib mal ein Aufrufbeispiel.<br />
Was gefällt dir denn an den Set-Funktionen nicht?</p>
<p>Ich glaube, was du willst sind Eigenschaften (engl. properties), aber diese gibt es in Standard-C++ nicht (aber mit Hilfe von Templates kann man soetwas nachbauen, aber dies ist nichts für Anfänger).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1413289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1413289</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Sat, 01 Dec 2007 11:28:21 GMT</pubDate></item><item><title><![CDATA[Reply to operator overload on Sat, 01 Dec 2007 12:01:31 GMT]]></title><description><![CDATA[<p>Naja was geht:</p>
<pre><code class="language-cpp">class point
{
    unsigned int m_x;
    unsigned int m_y;

public:
    point(unsigned int x = 0, unsigned int y = 0) : m_x(x), m_y(y) {}
    enum param { x = 0, y };
    unsigned int&amp; operator()(param const&amp; par) { return par == x ? m_x : m_y; }
    unsigned int const&amp; operator()(param const&amp; par) const { return par == x ? m_x : m_y; }
};

int main()
{
    point pt(10, 20);
    std::cout &lt;&lt; &quot;Point(&quot; &lt;&lt; pt(point::x) &lt;&lt; &quot;,&quot; &lt;&lt; pt(point::y) &lt;&lt; &quot;)&quot; &lt;&lt; std::endl;
    ++pt(point::x);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1413309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1413309</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sat, 01 Dec 2007 12:01:31 GMT</pubDate></item></channel></rss>