<?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== in Vererbungshierarchie...]]></title><description><![CDATA[<p>Hi,</p>
<p>Basisfrage...</p>
<pre><code class="language-cpp">struct X
{
    // ...
};

struct Y : public X
{
    // ...
};
</code></pre>
<p>Es kann auch ein X mit dynamischen Typ Y in der Anwendung geben und sowohl X als auch Y besitzen Attribute. Ich möchte jetzt operator== implementieren.</p>
<p>Wie löse ich das denn am schönsten?</p>
<p>Das hier klappt, nutzt jedoch typeid, wobei mir dazu auch kein Nachteil einfällt:</p>
<pre><code class="language-cpp">class X
{
public:
   X(int x) : x(x) {}

   bool operator==(const X&amp; rhs) const
   {
       return typeid(*this) == typeid(rhs) &amp;&amp; compare(rhs);
   }

protected:
   virtual bool compare(const X&amp; rhs) const
   {
        return x == rhs.x;
   }

   int x;
};

class Y : public X
{
public:
	Y(int x, int y) : X(x), y(y) {}

private:
    virtual bool compare(const X&amp; rhs) const
    {
    	return X::compare(rhs) &amp;&amp; y == static_cast&lt;const Y&amp;&gt;(rhs).y;
    }

    int y;
};
</code></pre>
<p>Wie löst ihr das?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/335298/operator-in-vererbungshierarchie</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 18:18:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/335298.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 12 Nov 2015 14:07:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Thu, 12 Nov 2015 14:07:09 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>Basisfrage...</p>
<pre><code class="language-cpp">struct X
{
    // ...
};

struct Y : public X
{
    // ...
};
</code></pre>
<p>Es kann auch ein X mit dynamischen Typ Y in der Anwendung geben und sowohl X als auch Y besitzen Attribute. Ich möchte jetzt operator== implementieren.</p>
<p>Wie löse ich das denn am schönsten?</p>
<p>Das hier klappt, nutzt jedoch typeid, wobei mir dazu auch kein Nachteil einfällt:</p>
<pre><code class="language-cpp">class X
{
public:
   X(int x) : x(x) {}

   bool operator==(const X&amp; rhs) const
   {
       return typeid(*this) == typeid(rhs) &amp;&amp; compare(rhs);
   }

protected:
   virtual bool compare(const X&amp; rhs) const
   {
        return x == rhs.x;
   }

   int x;
};

class Y : public X
{
public:
	Y(int x, int y) : X(x), y(y) {}

private:
    virtual bool compare(const X&amp; rhs) const
    {
    	return X::compare(rhs) &amp;&amp; y == static_cast&lt;const Y&amp;&gt;(rhs).y;
    }

    int y;
};
</code></pre>
<p>Wie löst ihr das?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475090</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475090</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Thu, 12 Nov 2015 14:07:09 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Thu, 12 Nov 2015 15:59:10 GMT]]></title><description><![CDATA[<p>Ich glaube um typeid oder umgekehrt um dynamic_cast wirst du nicht drum herum kommen.<br />
Lasse mich aber gerne vom Gegenteil überzeugen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475112</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475112</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 12 Nov 2015 15:59:10 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Thu, 12 Nov 2015 19:20:36 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Wie löst ihr das?</p>
</blockquote>
<p>Es kommt drauf an, was man braucht, und wie man das benutzt. Ich glaub, hier gibts keine wirklich schöne Lösung.<br />
Du hast z.B. die Prüfung ob der Typ gleich ist. Das ist ja schon mal eine ziemlich starke Einschränkung. Es kann ja durchaus reichen zu sagen, dass ein paar Basiseigenschaften für die Übereinstimmung ausreichen. Mir fällt bei uns mindestens ein Fall ein, wo eine abgeleitete Klasse zuerst schaut, ob das andere Objekt eine Instanz derselben Klasse ist und dann mehr vergleicht, und ansonsten einfach weniger vergleicht. Kommt halt auf den Kontext drauf an, was &quot;gleich&quot; bedeutet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475134</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475134</guid><dc:creator><![CDATA[Mechanics]]></dc:creator><pubDate>Thu, 12 Nov 2015 19:20:36 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 07:27:11 GMT]]></title><description><![CDATA[<p>ein Int mit dem Wert 1 sollte doch gleich einem float mit dem Wert 1.0 sein.<br />
das ein float genau 1.0 ist lass ich mal beiseite.</p>
<p>warum sollte man da die typeid beachten?</p>
<pre><code>struct Foo{ int i; };
struct Bar{ int i; };

Foo f = {1};
Bar b =  {1};
</code></pre>
<p>ist Foo f nun gleich Bar b?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475223</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475223</guid><dc:creator><![CDATA[kurze_frage]]></dc:creator><pubDate>Fri, 13 Nov 2015 07:27:11 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 07:57:03 GMT]]></title><description><![CDATA[<p>Inwiefern soll das jetzt helfen?<br />
Das Gleichheit kontext-abhängig ist, ist wohl jedem klar und offenbar heisst Gleichheit hier &quot;ganz genau gleich&quot;.<br />
Die Frage ist ja nur, wie man das 'schön' umsetzt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475231</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475231</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Fri, 13 Nov 2015 07:57:03 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 11:10:48 GMT]]></title><description><![CDATA[<p>was ist schon schön ...?<br />
vielleicht</p>
<pre><code>hash(a) == hash(b)
</code></pre>
<p>oder</p>
<pre><code>a.hash() == b.hash()
</code></pre>
<p>ersteres hat weniger Buchstaben, und sollte eigentlich zu zweiterem weiterleiten wenn ersteres nicht definiert ist, ich hoffe das kommt irgendwann.</p>
<p>ansonst, in einer Objekt Hierarchie wird man nicht virtuelle Funktionen herum kommen, wenn nicht so eine ID gibt.</p>
<p>Vielleicht die compare Funktion für den eigenen Typen überladen damit man sich im optimal Fall ein cast spart.</p>
<p>Es stellt sich jedoch schon die Frage, warum sollte ich einen Fisch auf Gleichheit mit einer Katz vergleichen nur weil beides Lebewesen sind.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475262</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475262</guid><dc:creator><![CDATA[kurze_frage]]></dc:creator><pubDate>Fri, 13 Nov 2015 11:10:48 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 11:40:12 GMT]]></title><description><![CDATA[<p>kurze_frage schrieb:</p>
<blockquote>
<p>Es stellt sich jedoch schon die Frage, warum sollte ich einen Fisch auf Gleichheit mit einer Katz vergleichen nur weil beides Lebewesen sind.</p>
</blockquote>
<p>Weil du vielleicht einen Fisch hast, von dem du wissen willst, ob er in einem Lebewesen-Container enthalten ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475267</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Fri, 13 Nov 2015 11:40:12 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 12:15:59 GMT]]></title><description><![CDATA[<p>Ich persönlich überlade keine operatoren virtual, aber die richtige vorgehensweise hier wäre:</p>
<pre><code class="language-cpp">virtual bool Derived::compareTo(Base const&amp; other) const {
  Derived const* o = dynamic_cast&lt;Derived const*&gt;(&amp;other);
  if(!o) return false; //this != other guard

  return this-&gt;value == o-&gt;value; //der echte vergleich
}
</code></pre>
<p>Man kann auch Visitor verwenden, das wird aber oft etwas umständlich. Kann aber den dynamic_cast sparen auf Kosten einer komplexeren Hierachie.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475273</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475273</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 13 Nov 2015 12:15:59 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 12:30:01 GMT]]></title><description><![CDATA[<p>Und wie würde dein ==-Operator aussehen?<br />
So wie bei Eisflamme? Dann hättest du ja dynamic_cast und typeid.<br />
Warum ist das 'die richtige vorgehensweise'?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475274</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475274</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Fri, 13 Nov 2015 12:30:01 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 12:53:30 GMT]]></title><description><![CDATA[<p>Jockelx schrieb:</p>
<blockquote>
<p>Und wie würde dein ==-Operator aussehen?</p>
</blockquote>
<p>Den gäbe es gar nicht.</p>
<blockquote>
<p>So wie bei Eisflamme? Dann hättest du ja dynamic_cast und typeid.<br />
Warum ist das 'die richtige vorgehensweise'?</p>
</blockquote>
<p>Kein typeid, nur der dynamic cast.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475277</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475277</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 13 Nov 2015 12:53:30 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 12:56:35 GMT]]></title><description><![CDATA[<p>Kein operator== aber dafür compareTo, wieso? Und ist dynamic_cast nicht teurer als typeid, das ergab meine bisherige Recherche jedenfalls.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475278</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475278</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Fri, 13 Nov 2015 12:56:35 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 14:30:23 GMT]]></title><description><![CDATA[<p>Weils bisher noch nicht genannt wurde werfe ich nochmal Double Dispatch in den Raum. Das wäre zumindest eine Lösung ohne <code>dynamic_cast</code> und <code>typeid</code> . Ob sie besser/schneller ist weiß ich nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475298</guid><dc:creator><![CDATA[sebi707]]></dc:creator><pubDate>Fri, 13 Nov 2015 14:30:23 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 14:33:33 GMT]]></title><description><![CDATA[<p>Ah, mein compareTo ist auch nicht ganz richtig, hier kommt die richtige Variante.</p>
<p>Das Problem mit dem typeid ist ja, dass man damit nur exakt gleiche Klassen testen kann. Das kann gewollt sein aber oft verhindert das sinnvolles Subclassing.</p>
<p>Und da die compare Funktion ja öffentlich (protected) ist, kann man da Fehler machen wenn ich die aufrufe obwohl ich den op== verwenden sollte.</p>
<p>Operatoren mit virtuellen verhalten mage ich persönlich nicht, deshalb habe ich eine compareTo funktion für die polymorphen Vergleiche. Aber prinzipiell kann man hier auch den op== verwenden.</p>
<pre><code class="language-cpp">class Base {
public:
        Base(int a) : value(a) {}

        virtual bool compareTo(Base const&amp; other) const {
                return this-&gt;value == other.value;
        }

private:
        int value;
};

class Derived : public Base {
public:
        Derived(int a, int b) : Base(a), value(b) {}

        virtual bool compareTo(Base const&amp; other) const {
                Derived const* p = dynamic_cast&lt;Derived const*&gt;(&amp;other);
                if(!p) return Base::compareTo(other);
                return value==p-&gt;value &amp;&amp; Base::compareTo(other);
        }
private:
        int value;
};

#include &lt;iostream&gt;

using namespace std;

int main() {
        Base b(1);
        Derived x(1,1);
        Derived y(2,1);

        cout&lt;&lt; &quot;b==x: &quot; &lt;&lt; b.compareTo(x) &lt;&lt; endl;
        cout&lt;&lt; &quot;x==b: &quot; &lt;&lt; x.compareTo(b) &lt;&lt; endl;
        cout&lt;&lt; &quot;b==y: &quot; &lt;&lt; b.compareTo(y) &lt;&lt; endl;
        cout&lt;&lt; &quot;y==b: &quot; &lt;&lt; y.compareTo(b) &lt;&lt; endl;
        cout&lt;&lt; &quot;x==y: &quot; &lt;&lt; x.compareTo(y) &lt;&lt; endl;
        cout&lt;&lt; &quot;y==x: &quot; &lt;&lt; y.compareTo(x) &lt;&lt; endl;
        cout&lt;&lt; &quot;b==b: &quot; &lt;&lt; b.compareTo(b) &lt;&lt; endl;
        cout&lt;&lt; &quot;x==x: &quot; &lt;&lt; x.compareTo(x) &lt;&lt; endl;
        cout&lt;&lt; &quot;y==y: &quot; &lt;&lt; y.compareTo(y) &lt;&lt; endl;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2475299</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475299</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 13 Nov 2015 14:33:33 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 15:19:43 GMT]]></title><description><![CDATA[<p>Jockelx schrieb:</p>
<blockquote>
<p>kurze_frage schrieb:</p>
<blockquote>
<p>Es stellt sich jedoch schon die Frage, warum sollte ich einen Fisch auf Gleichheit mit einer Katz vergleichen nur weil beides Lebewesen sind.</p>
</blockquote>
<p>Weil du vielleicht einen Fisch hast, von dem du wissen willst, ob er in einem Lebewesen-Container enthalten ist.</p>
</blockquote>
<p>Hä? Was hat der Lebewesen-Container mit einer Katze zu tun??<br />
fisch == katze muss wohl false sein.</p>
<p>lebewesen == fisch und<br />
fisch == lebewesen müssen beide false ergeben. Objekt slicing beim Vergleich? Wo soll das sinnvoll sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475302</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475302</guid><dc:creator><![CDATA[fisch_katze]]></dc:creator><pubDate>Fri, 13 Nov 2015 15:19:43 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 15:48:00 GMT]]></title><description><![CDATA[<p>Verstehe deine Frage nicht. Mit slicing hat das 0,0 zu tun.<br />
fisch == katze = false wird ja gerade durch das typeid erreicht.</p>
<p>Pseudocode:</p>
<pre><code>class Tier
{
  string farbe;
};
class Fisch : Tier;
class Katze : Tier;

vector&lt;Tier*&gt; tiere = {new Tier(&quot;gelb&quot;), new Fisch(&quot;pink&quot;), new Katze(&quot;lila&quot;)};
Tier* fischpink= new Fisch(&quot;pink&quot;);
Tier* fischlila= new Fisch(&quot;lila&quot;);
for(Tier* t : tiere)
{
  if(*t == *fischpink) cout &lt;&lt; &quot;Jau, pinken Fisch gibts schon&quot;;
  if(*t == *fischlila) cout &lt;&lt; &quot;Jau, lila Fisch gibts schon&quot;;
}
//Out: Jau, fischpink gibts
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2475305</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475305</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Fri, 13 Nov 2015 15:48:00 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 15:57:54 GMT]]></title><description><![CDATA[<p>Aufpassen: nicht jede Vererbung erzeugt etwas komplett anderes. Klar koennen Fisch und Katze unterschiedliche Tiere sein, wenn ich aber nach dem Haustier mit dem Namen &quot;Bello&quot; suche, ist mir das aber egal ob es ein Fisch oder eine Katze ist.</p>
<p>Auch kommt es ja oft vor dass man Vererbt um Funktionalitaet hinzuzufuegen. Rein auf die typeid zu testen limitiert solche Situationen. Aber Klassen Design ist immer auf einen speziellen Fall anzuwenden und es gibt kaum Allgemein gueltige Aussagen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475309</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 13 Nov 2015 15:57:54 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Fri, 13 Nov 2015 16:04:00 GMT]]></title><description><![CDATA[<p>Mmh!? Schön, aber behauptet nur niemand!<br />
Eisflamme hat ein bestimmtes Scenario beschrieben und gefragt und wie man das 'schön' umsetzt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475311</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475311</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Fri, 13 Nov 2015 16:04:00 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Tue, 17 Nov 2015 10:15:33 GMT]]></title><description><![CDATA[<p>Jockelx schrieb:</p>
<blockquote>
<p>Verstehe deine Frage nicht. Mit slicing hat das 0,0 zu tun.<br />
fisch == katze = false wird ja gerade durch das typeid erreicht.</p>
<p>Pseudocode:</p>
<pre><code>class Tier
{
  string farbe;
};
class Fisch : Tier;
class Katze : Tier;

vector&lt;Tier*&gt; tiere = {new Tier(&quot;gelb&quot;), new Fisch(&quot;pink&quot;), new Katze(&quot;lila&quot;)};
Tier* fischpink= new Fisch(&quot;pink&quot;);
Tier* fischlila= new Fisch(&quot;lila&quot;);
for(Tier* t : tiere)
{
  if(*t == *fischpink) cout &lt;&lt; &quot;Jau, pinken Fisch gibts schon&quot;;
  if(*t == *fischlila) cout &lt;&lt; &quot;Jau, lila Fisch gibts schon&quot;;
}
//Out: Jau, fischpink gibts
</code></pre>
</blockquote>
<p>ja so ungefähr, wenn du dich jetzt selber darum kümmerst das der Fisch ein Fisch ist, was so sein sollte denn warum sollte ein Fisch für dich testen das die Katze kein Fisch ist, dann gibts ganz normale == operatoren die Eigenes vergleichen und Reste an die Basis zum vergleich weiterleiten.</p>
<pre><code>for(Tier* t : tiere)
{
  if (artgleich(t, fischpink) {
    if(*t == *fischpink) cout &lt;&lt; &quot;Jau, pinken Fisch gibts schon&quot;;
    if(*t == *fischlila) cout &lt;&lt; &quot;Jau, lila Fisch gibts schon&quot;;
  }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2475777</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475777</guid><dc:creator><![CDATA[kurze_frage]]></dc:creator><pubDate>Tue, 17 Nov 2015 10:15:33 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Tue, 17 Nov 2015 12:29:26 GMT]]></title><description><![CDATA[<p>Ich verstehe den Vorteil des externen Vergleichs auf Typgleichheit nicht. Könntest du den nochmal erläutern?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475795</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475795</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 17 Nov 2015 12:29:26 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Wed, 18 Nov 2015 08:56:18 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Ich verstehe den Vorteil des externen Vergleichs auf Typgleichheit nicht. Könntest du den nochmal erläutern?</p>
</blockquote>
<p>bezahle nur für das was du brauchst dort wo du es brauchst.</p>
<p>Ich sehe grade das das cast im Beispiel oben fehlt, so ist es komplett</p>
<pre><code>for(Tier* t : tiere)
{
  Fish* f = dynamic_cast&lt;Fish&gt;(t);
  if (f) {
    if(*f == *fischpink) cout &lt;&lt; &quot;Jau, pinken Fisch gibts schon&quot;;
    if(*f == *fischlila) cout &lt;&lt; &quot;Jau, lila Fisch gibts schon&quot;;
  }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2475901</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475901</guid><dc:creator><![CDATA[kurze_frage]]></dc:creator><pubDate>Wed, 18 Nov 2015 08:56:18 GMT</pubDate></item><item><title><![CDATA[Reply to operator== in Vererbungshierarchie... on Wed, 18 Nov 2015 19:46:05 GMT]]></title><description><![CDATA[<p>Mir ist jetzt auch nicht klar, worauf du hinauswillst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2475991</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2475991</guid><dc:creator><![CDATA[Mechanics]]></dc:creator><pubDate>Wed, 18 Nov 2015 19:46:05 GMT</pubDate></item></channel></rss>