<?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[Ist der Compiler plötzlich blind?]]></title><description><![CDATA[<p>Abent. Zuerst mal ein wenig Code...</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

class interface_type
{
    int fld;
protected:
    explicit interface_type(int wat) : fld(wat)
    {
    }
    int &amp;get()
    {
        return fld;
    }
public:
    const int &amp;get() const
    {
        return fld;
    }
};

class implementation : public interface_type
{
public:
    explicit implementation(int wat) : interface_type(wat)
    {
    }
};

int main()
{
    using namespace std;
    //
    implementation impl(77);
    wcout &lt;&lt; impl.get();
}
</code></pre>
<p>Wenn ich das durch den Compiler (Visual C++ 2008) jage bekomme ich den folgenden Fehler:</p>
<pre><code>... (34) : error C2248: 'interface_type::get' : cannot access protected member declared in class 'interface_type'
</code></pre>
<p>Meine Frage ist, WARUM dies ein Fehler sein soll. Wieso greift der Compiler nicht auf die offensichtliche non-const Variante zu? MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/224037/ist-der-compiler-plötzlich-blind</link><generator>RSS for Node</generator><lastBuildDate>Fri, 02 Oct 2026 20:51:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/224037.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 04 Oct 2008 16:04:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ist der Compiler plötzlich blind? on Sat, 04 Oct 2008 16:04:59 GMT]]></title><description><![CDATA[<p>Abent. Zuerst mal ein wenig Code...</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

class interface_type
{
    int fld;
protected:
    explicit interface_type(int wat) : fld(wat)
    {
    }
    int &amp;get()
    {
        return fld;
    }
public:
    const int &amp;get() const
    {
        return fld;
    }
};

class implementation : public interface_type
{
public:
    explicit implementation(int wat) : interface_type(wat)
    {
    }
};

int main()
{
    using namespace std;
    //
    implementation impl(77);
    wcout &lt;&lt; impl.get();
}
</code></pre>
<p>Wenn ich das durch den Compiler (Visual C++ 2008) jage bekomme ich den folgenden Fehler:</p>
<pre><code>... (34) : error C2248: 'interface_type::get' : cannot access protected member declared in class 'interface_type'
</code></pre>
<p>Meine Frage ist, WARUM dies ein Fehler sein soll. Wieso greift der Compiler nicht auf die offensichtliche non-const Variante zu? MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1593380</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1593380</guid><dc:creator><![CDATA[Handle-ID_ #432-12-7629]]></dc:creator><pubDate>Sat, 04 Oct 2008 16:04:59 GMT</pubDate></item><item><title><![CDATA[Reply to Ist der Compiler plötzlich blind? on Sat, 04 Oct 2008 16:09:23 GMT]]></title><description><![CDATA[<p>Weil die protected Methode ein besseres Match ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1593385</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1593385</guid><dc:creator><![CDATA[Don06]]></dc:creator><pubDate>Sat, 04 Oct 2008 16:09:23 GMT</pubDate></item><item><title><![CDATA[Reply to Ist der Compiler plötzlich blind? on Sat, 04 Oct 2008 16:10:40 GMT]]></title><description><![CDATA[<p>du rufst ja auch nicht const auf</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1593388</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1593388</guid><dc:creator><![CDATA[passt doch]]></dc:creator><pubDate>Sat, 04 Oct 2008 16:10:40 GMT</pubDate></item><item><title><![CDATA[Reply to Ist der Compiler plötzlich blind? on Sat, 04 Oct 2008 16:11:02 GMT]]></title><description><![CDATA[<p>Don06 schrieb:</p>
<blockquote>
<p>Weil die protected Methode ein besseres Match ist?</p>
</blockquote>
<p>Das mag stimmen, aber sie ist ja protected und kommt darum gar nicht in Frage? <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/1593389</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1593389</guid><dc:creator><![CDATA[Handle-ID_ #432-12-7629]]></dc:creator><pubDate>Sat, 04 Oct 2008 16:11:02 GMT</pubDate></item><item><title><![CDATA[Reply to Ist der Compiler plötzlich blind? on Sat, 04 Oct 2008 16:12:07 GMT]]></title><description><![CDATA[<p>Handle-ID_ #432-12-7629 schrieb:</p>
<blockquote>
<p>Don06 schrieb:</p>
<blockquote>
<p>Weil die protected Methode ein besseres Match ist?</p>
</blockquote>
<p>Das mag stimmen, aber sie ist ja protected und kommt darum gar nicht in Frage? <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>nein, kommt sie schon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1593390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1593390</guid><dc:creator><![CDATA[nein]]></dc:creator><pubDate>Sat, 04 Oct 2008 16:12:07 GMT</pubDate></item><item><title><![CDATA[Reply to Ist der Compiler plötzlich blind? on Sat, 04 Oct 2008 16:13:25 GMT]]></title><description><![CDATA[<p>Okay. Und wie löse ich das Problem am besten?</p>
<p>thx 4 help so far <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1593393</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1593393</guid><dc:creator><![CDATA[Handle-ID_ #432-12-7629]]></dc:creator><pubDate>Sat, 04 Oct 2008 16:13:25 GMT</pubDate></item><item><title><![CDATA[Reply to Ist der Compiler plötzlich blind? on Sat, 04 Oct 2008 16:17:17 GMT]]></title><description><![CDATA[<p>Ach, ist schon gut habs gefunden... Designtechnisch nicht gerade gut was ich momentan habe. Ich werde die protected members rausschmeissen, denn die brauch ich nicht wenn ichs redesigne <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>thx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1593395</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1593395</guid><dc:creator><![CDATA[Handle-ID_ #432-12-7629]]></dc:creator><pubDate>Sat, 04 Oct 2008 16:17:17 GMT</pubDate></item></channel></rss>