<?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[Geschachtelte structs (Baumstruktur) in vererbung erweitern?]]></title><description><![CDATA[<p>In einigen Fällen benutze ich gerne geschachtelte structs um eine art Baumstruktur zu machen.<br />
Dies hat leider den Nachteil das man nicht einfach eine der structs in der Vererbung Erweitern kann:</p>
<pre><code>struct Struct1
{
    //&lt;--Ganz viele complexe ander sachen hier
    struct
    {
        int a;
    } sub;
};

struct Struct2 : public Struct1
{
    struct
    {
        int b;
    } sub;
};

...

Struct2 s;
s.sub.a = 0; //geht nicht weil wir sub aus Struct1 &quot;überschrieben&quot; und nicht &quot;erweitert&quot; haben :(
</code></pre>
<p>Gibs da eventuell ne möglichkeit? Momentan müsste ich beide Basisstrukturen ausschreiben, inklusive Initalisierung etc...</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/330198/geschachtelte-structs-baumstruktur-in-vererbung-erweitern</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 11:54:02 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/330198.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 27 Dec 2014 16:55:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Geschachtelte structs (Baumstruktur) in vererbung erweitern? on Sat, 27 Dec 2014 16:55:50 GMT]]></title><description><![CDATA[<p>In einigen Fällen benutze ich gerne geschachtelte structs um eine art Baumstruktur zu machen.<br />
Dies hat leider den Nachteil das man nicht einfach eine der structs in der Vererbung Erweitern kann:</p>
<pre><code>struct Struct1
{
    //&lt;--Ganz viele complexe ander sachen hier
    struct
    {
        int a;
    } sub;
};

struct Struct2 : public Struct1
{
    struct
    {
        int b;
    } sub;
};

...

Struct2 s;
s.sub.a = 0; //geht nicht weil wir sub aus Struct1 &quot;überschrieben&quot; und nicht &quot;erweitert&quot; haben :(
</code></pre>
<p>Gibs da eventuell ne möglichkeit? Momentan müsste ich beide Basisstrukturen ausschreiben, inklusive Initalisierung etc...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2434845</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2434845</guid><dc:creator><![CDATA[Osbios]]></dc:creator><pubDate>Sat, 27 Dec 2014 16:55:50 GMT</pubDate></item><item><title><![CDATA[Reply to Geschachtelte structs (Baumstruktur) in vererbung erweitern? on Sat, 27 Dec 2014 17:06:03 GMT]]></title><description><![CDATA[<p>Zeiger verwenden. Und schaut nach dem Kompositum Pattern aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2434847</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2434847</guid><dc:creator><![CDATA[Mechanics]]></dc:creator><pubDate>Sat, 27 Dec 2014 17:06:03 GMT</pubDate></item><item><title><![CDATA[Reply to Geschachtelte structs (Baumstruktur) in vererbung erweitern? on Sat, 27 Dec 2014 19:12:36 GMT]]></title><description><![CDATA[<p>Das sub in struct2 überschreit das sub in struct1 nicht, sonderen verdeckt das nur. Du kannst einfach einen anderen Namen für sub verwenden. Das Design erscheint mir aber zu kompliziert, vielleicht läßt sich das, was Du willst, auch anders einfacher erreichen.<br />
z.B.:</p>
<pre><code>struct Foo{
 //&lt;--Ganz viele komplexe andere Sachen hier
};
struct Struct1
{
    Foo base;
    int a;
};

struct Struct2
{
    Foo base;
    int a;
    int b;
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2434887</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2434887</guid><dc:creator><![CDATA[DJohn]]></dc:creator><pubDate>Sat, 27 Dec 2014 19:12:36 GMT</pubDate></item></channel></rss>