<?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[komplexe hierachie + friend&amp;amp;protected]]></title><description><![CDATA[<p>Hi,<br />
ich habe ein relativ komplexe (viele Klassen + Template-Overloads etc.) Klassenhierarchie, bei der immer eine Klasse (protected) von einer anderen erbt.</p>
<p>Ganz einfach als Beispiel so:</p>
<pre><code class="language-cpp">class A
{
};
class B : protected A
{
};
class C : protected B
{
};

//...

class N : protected M
{
};
</code></pre>
<p>Nun möchte ich in einem Operator auf die Basisklasse (A) von &quot;N&quot; zugreifen.<br />
Operator wird also Friend von N. Leider schlägt dann aber immer die Konvertierung fehl ('static_cast' : conversion from 'xxx' to 'xxx' exists, but is inaccessible). Die Konvertierung von N aber in den nächsten, &quot;höher-gelegenen&quot; Typ (bei N also M) klappt aber wunderbar...</p>
<p>Was ist falsch?<br />
Muss der Operator friend von jeder Klasse in der Hierarchie sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/194488/komplexe-hierachie-friend-amp-protected</link><generator>RSS for Node</generator><lastBuildDate>Tue, 29 Sep 2026 14:17:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/194488.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 07 Oct 2007 16:51:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to komplexe hierachie + friend&amp;amp;protected on Sun, 07 Oct 2007 16:51:32 GMT]]></title><description><![CDATA[<p>Hi,<br />
ich habe ein relativ komplexe (viele Klassen + Template-Overloads etc.) Klassenhierarchie, bei der immer eine Klasse (protected) von einer anderen erbt.</p>
<p>Ganz einfach als Beispiel so:</p>
<pre><code class="language-cpp">class A
{
};
class B : protected A
{
};
class C : protected B
{
};

//...

class N : protected M
{
};
</code></pre>
<p>Nun möchte ich in einem Operator auf die Basisklasse (A) von &quot;N&quot; zugreifen.<br />
Operator wird also Friend von N. Leider schlägt dann aber immer die Konvertierung fehl ('static_cast' : conversion from 'xxx' to 'xxx' exists, but is inaccessible). Die Konvertierung von N aber in den nächsten, &quot;höher-gelegenen&quot; Typ (bei N also M) klappt aber wunderbar...</p>
<p>Was ist falsch?<br />
Muss der Operator friend von jeder Klasse in der Hierarchie sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1379856</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1379856</guid><dc:creator><![CDATA[tatütata]]></dc:creator><pubDate>Sun, 07 Oct 2007 16:51:32 GMT</pubDate></item><item><title><![CDATA[Reply to komplexe hierachie + friend&amp;amp;protected on Sun, 07 Oct 2007 17:46:02 GMT]]></title><description><![CDATA[<p>tatütata schrieb:</p>
<blockquote>
<p>Muss der Operator friend von jeder Klasse in der Hierarchie sein?</p>
</blockquote>
<p>nein. Zeig mal ein minimales (abgesehen von diesem Fehler kompilierbares) Beispiel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1379916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1379916</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sun, 07 Oct 2007 17:46:02 GMT</pubDate></item></channel></rss>