<?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[Vererbung bewirkt seltsame Fehlermeldung]]></title><description><![CDATA[<p>Hallo Community!</p>
<p>Ich krieg beim Konstruktor der Klasse Pkw immer eine kryptische Fehlermeldung und verstehe nicht was ich falsch gemacht habe.</p>
<p>Fehler:<br />
Aufgabe33.cpp:32: warning: direct base âFahrzeugâ inaccessible in âPkwâ due to ambiguity<br />
Aufgabe33.cpp: In constructor âPkw::Pkw(int, std::string, int, int, int)â:<br />
Aufgabe33.cpp:37: error: no matching function for call to âKfz::Kfz(int&amp;, int&amp;)â<br />
Aufgabe33.cpp:27: note: candidates are: Kfz::Kfz(int, std::string, int, int)<br />
Aufgabe33.cpp:22: note: Kfz::Kfz(const Kfz&amp;)</p>
<p>#include &lt;string&gt;<br />
#include &lt;iostream&gt;</p>
<p>using namespace std;</p>
<p>class Fahrzeug{<br />
private:<br />
int raeder;<br />
string farbe;<br />
virtual void info();<br />
public:<br />
Fahrzeug(int r,string f):raeder(r),farbe(f){}<br />
~Fahrzeug(){;}<br />
};</p>
<p>class Kfz: public Fahrzeug {<br />
private:<br />
int kw; // Leistung<br />
int baujahr;<br />
public:<br />
Kfz(int r, string f, int Kw, int Baujahr)<br />
:Fahrzeug(r,f),kw(Kw),baujahr(Baujahr){}<br />
};</p>
<p>class Pkw: public Fahrzeug, public Kfz {<br />
private:<br />
int sitzplaetze;<br />
public:<br />
Pkw(int r, string f, int Kw, int Baujahr, int Sitzplaetze)<br />
:Fahrzeug(r,f),Kfz(Kw,Baujahr),sitzplaetze(Sitzplaetze){}<br />
};</p>
<p>int main()<br />
{<br />
return 0;<br />
}</p>
<p>Lg Caro</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/257288/vererbung-bewirkt-seltsame-fehlermeldung</link><generator>RSS for Node</generator><lastBuildDate>Thu, 10 Sep 2026 11:11:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/257288.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 26 Dec 2009 09:21:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Vererbung bewirkt seltsame Fehlermeldung on Sat, 26 Dec 2009 09:21:16 GMT]]></title><description><![CDATA[<p>Hallo Community!</p>
<p>Ich krieg beim Konstruktor der Klasse Pkw immer eine kryptische Fehlermeldung und verstehe nicht was ich falsch gemacht habe.</p>
<p>Fehler:<br />
Aufgabe33.cpp:32: warning: direct base âFahrzeugâ inaccessible in âPkwâ due to ambiguity<br />
Aufgabe33.cpp: In constructor âPkw::Pkw(int, std::string, int, int, int)â:<br />
Aufgabe33.cpp:37: error: no matching function for call to âKfz::Kfz(int&amp;, int&amp;)â<br />
Aufgabe33.cpp:27: note: candidates are: Kfz::Kfz(int, std::string, int, int)<br />
Aufgabe33.cpp:22: note: Kfz::Kfz(const Kfz&amp;)</p>
<p>#include &lt;string&gt;<br />
#include &lt;iostream&gt;</p>
<p>using namespace std;</p>
<p>class Fahrzeug{<br />
private:<br />
int raeder;<br />
string farbe;<br />
virtual void info();<br />
public:<br />
Fahrzeug(int r,string f):raeder(r),farbe(f){}<br />
~Fahrzeug(){;}<br />
};</p>
<p>class Kfz: public Fahrzeug {<br />
private:<br />
int kw; // Leistung<br />
int baujahr;<br />
public:<br />
Kfz(int r, string f, int Kw, int Baujahr)<br />
:Fahrzeug(r,f),kw(Kw),baujahr(Baujahr){}<br />
};</p>
<p>class Pkw: public Fahrzeug, public Kfz {<br />
private:<br />
int sitzplaetze;<br />
public:<br />
Pkw(int r, string f, int Kw, int Baujahr, int Sitzplaetze)<br />
:Fahrzeug(r,f),Kfz(Kw,Baujahr),sitzplaetze(Sitzplaetze){}<br />
};</p>
<p>int main()<br />
{<br />
return 0;<br />
}</p>
<p>Lg Caro</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1827913</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1827913</guid><dc:creator><![CDATA[fischldi]]></dc:creator><pubDate>Sat, 26 Dec 2009 09:21:16 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbung bewirkt seltsame Fehlermeldung on Sat, 26 Dec 2009 09:27:02 GMT]]></title><description><![CDATA[<p>Ähm, wieos erbt Pkw von Kfz UND Fahrzeug?!?<br />
Und dann verwendest du nicht existente Kostruktoren zur Basisinitialisierung.<br />
Und in Pkw erst die Basis Fahrzeug initialisieren, um dann Kfz zu initialisieren, welches wiederum den Fahrzeug-Basisteil initialisiert.</p>
<p>Lass einfach das ABleiten von Fahrzeug in Pkw weg. Das braucht es echt nicht!<br />
Du hast mit Kfz als Basis von Pkw schon ein Fahrzeug als Basis...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1827914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1827914</guid><dc:creator><![CDATA[Rapunzel]]></dc:creator><pubDate>Sat, 26 Dec 2009 09:27:02 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbung bewirkt seltsame Fehlermeldung on Sat, 26 Dec 2009 09:30:25 GMT]]></title><description><![CDATA[<p>Und wie initialisiere ich dann die Anzahl der Raeder und die Farbe im Pkw Konstruktor?</p>
<p>Wenn ich class Pkw : public Kfz {}; schreib dann weiss ich nicht wie mein Konstruktor aussehen muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1827915</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1827915</guid><dc:creator><![CDATA[fischldi]]></dc:creator><pubDate>Sat, 26 Dec 2009 09:30:25 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbung bewirkt seltsame Fehlermeldung on Sat, 26 Dec 2009 09:31:36 GMT]]></title><description><![CDATA[<p>class Pkw: public Kfz {<br />
private:<br />
int sitzplaetze;<br />
public:<br />
Pkw(int r, string f, int Kw, int Baujahr, int Sitzplaetze)<br />
:Kfz(r, f, Kw,Baujahr),sitzplaetze(Sitzplaetze){}<br />
};</p>
<p>So?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1827917</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1827917</guid><dc:creator><![CDATA[fischldi]]></dc:creator><pubDate>Sat, 26 Dec 2009 09:31:36 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbung bewirkt seltsame Fehlermeldung on Sat, 26 Dec 2009 09:34:35 GMT]]></title><description><![CDATA[<p>Du hast doch einen passenden Konstruktor in Kfz! Warum verwendest du nicht den, sondern einen nicht existenten?</p>
<pre><code class="language-cpp">class Pkw: public Kfz {
    private:
        int sitzplaetze;
    public:
        Pkw(int r, string f, int Kw, int Baujahr, int Sitzplaetze)
        : Kfz(r, f, Kw, Baujahr), sitzplaetze(Sitzplaetze){}
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1827919</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1827919</guid><dc:creator><![CDATA[Rapunzel]]></dc:creator><pubDate>Sat, 26 Dec 2009 09:34:35 GMT</pubDate></item><item><title><![CDATA[Reply to Vererbung bewirkt seltsame Fehlermeldung on Sat, 26 Dec 2009 09:51:31 GMT]]></title><description><![CDATA[<p>Danke für Deine Hilfe! Das hab ich jetzt kapiert!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1827923</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1827923</guid><dc:creator><![CDATA[fischldi]]></dc:creator><pubDate>Sat, 26 Dec 2009 09:51:31 GMT</pubDate></item></channel></rss>