<?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[protected zu private]]></title><description><![CDATA[<p>Abend!</p>
<p>Wenn ich eine protected pure virtual Methode A::method habe und diese in B implementiere, darf die dann in B private sein?</p>
<pre><code class="language-cpp">class A {
protected:
   virtual void method() = 0;
};

class B : public A {
private: // geht das? Oder muss es auch protected sein?
   virtual void method() { .. }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/289947/protected-zu-private</link><generator>RSS for Node</generator><lastBuildDate>Tue, 18 Aug 2026 21:46:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/289947.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 15 Jul 2011 23:09:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to protected zu private on Fri, 15 Jul 2011 23:09:13 GMT]]></title><description><![CDATA[<p>Abend!</p>
<p>Wenn ich eine protected pure virtual Methode A::method habe und diese in B implementiere, darf die dann in B private sein?</p>
<pre><code class="language-cpp">class A {
protected:
   virtual void method() = 0;
};

class B : public A {
private: // geht das? Oder muss es auch protected sein?
   virtual void method() { .. }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2093450</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2093450</guid><dc:creator><![CDATA[C++Frager]]></dc:creator><pubDate>Fri, 15 Jul 2011 23:09:13 GMT</pubDate></item><item><title><![CDATA[Reply to protected zu private on Fri, 15 Jul 2011 23:18:52 GMT]]></title><description><![CDATA[<p>Geht, ist aber eine fragwürdige Vorgehensweise. Von <code>B</code> abgeleitete Klassen können nach wie vor auf <code>method()</code> zugreifen, indem der Zugriff über ein <code>A*</code> oder <code>A&amp;</code> erfolgt.</p>
<p>Warum ist <code>method()</code> nicht schon in <code>A</code>  <code>private</code> ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2093456</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2093456</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 15 Jul 2011 23:18:52 GMT</pubDate></item><item><title><![CDATA[Reply to protected zu private on Fri, 15 Jul 2011 23:23:22 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Geht, ist aber eine fragwürdige Vorgehensweise. Von <code>B</code> abgeleitete Klassen können nach wie vor auf <code>method()</code> zugreifen, indem der Zugriff über ein <code>A*</code> oder <code>A&amp;</code> erfolgt.</p>
<p>Warum ist <code>method()</code> nicht schon in <code>A</code>  <code>private</code> ?</p>
</blockquote>
<p>Ich dachte wenn ich method() in A private mache, dann können sie abgeleitete Klassen nicht überschreiben. Auf private haben Subklassen doch keinen Zugriff? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2093457</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2093457</guid><dc:creator><![CDATA[C++Frager]]></dc:creator><pubDate>Fri, 15 Jul 2011 23:23:22 GMT</pubDate></item><item><title><![CDATA[Reply to protected zu private on Fri, 15 Jul 2011 23:26:43 GMT]]></title><description><![CDATA[<p>C++Frager schrieb:</p>
<blockquote>
<p>Auf private haben Subklassen doch keinen Zugriff? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
</blockquote>
<p>Das betrifft primär den Aufruf. Virtuelle Funktionen können durchaus privat sein und in abgeleiteten Klassen überschrieben werden.</p>
<p>Siehe auch <a href="http://www.gotw.ca/publications/mill18.htm" rel="nofollow">http://www.gotw.ca/publications/mill18.htm</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2093458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2093458</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 15 Jul 2011 23:26:43 GMT</pubDate></item></channel></rss>