<?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[Virtuelle funktionen ableiten????]]></title><description><![CDATA[<p>HAbe Basisklasse A, und möchte da funkA in B und C ableiten, allerdings hat die funktion in C zusätzlich Parameter.. geht das?</p>
<p>Folgendes Beispiel:</p>
<pre><code class="language-cpp">class A {

 virtual void FunkA(){};

};

class B : public A{
 void FunkA(){.........};
};

class C: public A{
 void FunkA(Parameter){.....};

};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/160452/virtuelle-funktionen-ableiten</link><generator>RSS for Node</generator><lastBuildDate>Fri, 11 Sep 2026 06:04:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/160452.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 26 Sep 2006 03:57:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Virtuelle funktionen ableiten???? on Tue, 26 Sep 2006 03:57:50 GMT]]></title><description><![CDATA[<p>HAbe Basisklasse A, und möchte da funkA in B und C ableiten, allerdings hat die funktion in C zusätzlich Parameter.. geht das?</p>
<p>Folgendes Beispiel:</p>
<pre><code class="language-cpp">class A {

 virtual void FunkA(){};

};

class B : public A{
 void FunkA(){.........};
};

class C: public A{
 void FunkA(Parameter){.....};

};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1144385</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1144385</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Tue, 26 Sep 2006 03:57:50 GMT</pubDate></item><item><title><![CDATA[Reply to Virtuelle funktionen ableiten???? on Tue, 26 Sep 2006 04:42:52 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile.php?mode=viewprofile&amp;u=9713" rel="nofollow">estartu</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=1" rel="nofollow">MFC (Visual C++)</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=15" rel="nofollow">C++</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1144391</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1144391</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Tue, 26 Sep 2006 04:42:52 GMT</pubDate></item><item><title><![CDATA[Reply to Virtuelle funktionen ableiten???? on Tue, 26 Sep 2006 05:20:05 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">class A
{
 virtual void FunkA(){};
 // Falls das keine Implementation in dieser Klasse hat/braucht, dann mach die Funktion rein virtuell
 //(Dann _muss_ jede abgelittene Klasse aber auch eine eigene Implementation
 //mitbringen falls sie instanziert werden soll):
 virtual void FunkA()=0;
};

class B : public A
{
 virtual void FunkA(){/*.........*/};
};

class C: public A
{
 // Entweder ne eigene Implementation
 virtual void FunkA(){/*...*/}
 // oder aber die aus der Basisklasse verwenden (Die wird durch FunkA
 // mit Parameter afaik sonst überdeckt)
 using void A::FunkA();

 void FunkA(Parameter){/*.....*/};
};
</code></pre>
<p>Ich versteh zwar nicht den Sinn davon, aber was solls... entweder in deinem Klassendesign stimmt was nicht oder aber du solltest die Funktion FunkA(Parameter) auch in A als (rein) virtuell deklarieren, sonst ergibt das ja nicht viel Sinn.</p>
<p>Um auf deine Frage direkt zu antworten: So wie du dir das vorstellst geht das nicht.</p>
<p>[edit: dieser Beitrag wurde unter den ersten Ausfallerscheinungen aufgrund von Müdigkeit verfasst]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1144393</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1144393</guid><dc:creator><![CDATA[bluecode]]></dc:creator><pubDate>Tue, 26 Sep 2006 05:20:05 GMT</pubDate></item><item><title><![CDATA[Reply to Virtuelle funktionen ableiten???? on Tue, 26 Sep 2006 08:22:03 GMT]]></title><description><![CDATA[<p>BorisDieKlinge schrieb:</p>
<blockquote>
<p>...geht das?...</p>
</blockquote>
<p>Ist die Frage, was Du unter &quot;geht&quot; verstehst:<br />
+ Das ist korrekte Syntax und<br />
+ Jedes C-Objekt hat dann auch eine Funktion void FunkA(Parameter)<br />
- aber leider entweder (ohne &quot;using&quot;) statt der Funktion void FunkA(void)<br />
- oder (mit &quot;using&quot;) zusätzlich zur Funktion void FunkA(void)<br />
- man kann natürlich keine &quot;Basisklassen-Pointer-Polymorphie&quot; mit &quot;void FunkA(Parameter)&quot; machen.</p>
<pre><code class="language-cpp">A* a = new C;
    Parameter p;
    p-&gt;FunkA(p); // =&gt; Compilefehler: Funktion nicht definiert.
    p-&gt;FunkA();  // tut's und ruft C::FunkA() auf.
...
</code></pre>
<p>=&gt; Was Du da machst, ist &quot;overloading&quot; und nicht &quot;overriding&quot;.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1144444</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1144444</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 26 Sep 2006 08:22:03 GMT</pubDate></item><item><title><![CDATA[Reply to Virtuelle funktionen ableiten???? on Tue, 26 Sep 2006 07:51:22 GMT]]></title><description><![CDATA[<p>Das dumme ist nur das er die &quot;orginal&quot; Funktion überdeckt. Und sowas sollte niemals bei öffentlicher Vererbung geschehen.</p>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1144470</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1144470</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Tue, 26 Sep 2006 07:51:22 GMT</pubDate></item><item><title><![CDATA[Reply to Virtuelle funktionen ableiten???? on Tue, 26 Sep 2006 08:22:09 GMT]]></title><description><![CDATA[<p>David_pb schrieb:</p>
<blockquote>
<p>Das dumme ist nur das er die &quot;orginal&quot; Funktion überdeckt. Und sowas sollte niemals bei öffentlicher Vererbung geschehen.</p>
<p>grüße</p>
</blockquote>
<p>Stimmt !!<br />
Hatte mich auf die using-Version bezogen !<br />
Hab's korrigiert.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1144496</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1144496</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 26 Sep 2006 08:22:09 GMT</pubDate></item></channel></rss>