<?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[virtuell - wo ist der Sinn?]]></title><description><![CDATA[<p>Ich lese gerade in meinem Cpp Primer Buch das Kapitel zu Vererbung und hänge gerade am abschnitt wo erklärt werden soll was virtuelle methoden bringen. Ich sehe nicht den Sinn/Vorteil eine methode virtuell zu machen wo doch alle anderen methoden genauso vererbt werden??<br />
Kann mich da jemand aufklären und mir vll n praktisches Beispiel geben? Wär der Person sehr verbunden.</p>
<p>Danke an alle die sich die Mühe machen</p>
<p>lg S.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/261628/virtuell-wo-ist-der-sinn</link><generator>RSS for Node</generator><lastBuildDate>Mon, 07 Sep 2026 04:31:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/261628.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 21 Feb 2010 17:11:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to virtuell - wo ist der Sinn? on Sun, 21 Feb 2010 17:11:53 GMT]]></title><description><![CDATA[<p>Ich lese gerade in meinem Cpp Primer Buch das Kapitel zu Vererbung und hänge gerade am abschnitt wo erklärt werden soll was virtuelle methoden bringen. Ich sehe nicht den Sinn/Vorteil eine methode virtuell zu machen wo doch alle anderen methoden genauso vererbt werden??<br />
Kann mich da jemand aufklären und mir vll n praktisches Beispiel geben? Wär der Person sehr verbunden.</p>
<p>Danke an alle die sich die Mühe machen</p>
<p>lg S.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1859177</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1859177</guid><dc:creator><![CDATA[Jud4s]]></dc:creator><pubDate>Sun, 21 Feb 2010 17:11:53 GMT</pubDate></item><item><title><![CDATA[Reply to virtuell - wo ist der Sinn? on Sun, 21 Feb 2010 17:16:21 GMT]]></title><description><![CDATA[<p>Es geht nicht darum, dass Methoden vererbt werden, sondern um den polymorphen Zugriff auf einen Basiklassenzeiger. Les mal weiter, das wird da sicher noch erklärt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1859179</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1859179</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Sun, 21 Feb 2010 17:16:21 GMT</pubDate></item><item><title><![CDATA[Reply to virtuell - wo ist der Sinn? on Sun, 21 Feb 2010 17:17:40 GMT]]></title><description><![CDATA[<p><a href="http://www.willemer.de/informatik/cpp/cppvirt.htm" rel="nofollow">http://www.willemer.de/informatik/cpp/cppvirt.htm</a></p>
<p><a href="http://tutorial.schornboeck.net/virtual.htm" rel="nofollow">http://tutorial.schornboeck.net/virtual.htm</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1859181</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1859181</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 21 Feb 2010 17:17:40 GMT</pubDate></item><item><title><![CDATA[Reply to virtuell - wo ist der Sinn? on Sun, 21 Feb 2010 17:18:20 GMT]]></title><description><![CDATA[<p>ok, danke ich lese das Kapitell dann einfach komplett und melde mich dann ggf noch mal, nur aktuell versteh ich nur Spanisch. Gibt es zufällig ein gutes Tuturial für das Thema?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1859182</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1859182</guid><dc:creator><![CDATA[Jud4s]]></dc:creator><pubDate>Sun, 21 Feb 2010 17:18:20 GMT</pubDate></item><item><title><![CDATA[Reply to virtuell - wo ist der Sinn? on Sun, 21 Feb 2010 17:21:55 GMT]]></title><description><![CDATA[<p>Ein Beispiel ohne virtuelle Methoden:</p>
<pre><code class="language-cpp">class Tier {
public:
  void PrintName() { std::cout &lt;&lt; &quot;Tier&quot; &lt;&lt; std::endl; }
};

class Hund : public Tier {
public:
  void PrintName() { std::cout &lt;&lt; &quot;Hund&quot; &lt;&lt; std::endl; }
};

int main(){
   Hund * einHund = new Hund();
   Tier * einTier = einHund;
   einTier-&gt;PrintName();
   einHund-&gt;PrintName();
   return 0;
}
</code></pre>
<p>Ausgabe:<br />
Tier<br />
Hund</p>
<p>Und jetzt ein Beispiel mit virtuelle Methoden:</p>
<pre><code class="language-cpp">class Tier {
public:
  virtual ~Tier(){}
  virtual void PrintName() { std::cout &lt;&lt; &quot;Tier&quot; &lt;&lt; std::endl; }
};

class Hund : public Tier {
public:
  virtual void PrintName() { std::cout &lt;&lt; &quot;Hund&quot; &lt;&lt; std::endl; }
};

int main(){
   Hund * einHund = new Hund();
   Tier * einTier = einHund;
   einTier-&gt;PrintName();
   einHund-&gt;PrintName();
   return 0;
}
</code></pre>
<p>Ausgabe:<br />
Hund<br />
Hund</p>
<p>Wenn du dir das jetzt anschaust die beiden Beispiele verwenden beide male das gleiche Objekt. Aber wenn deine Methoden virtuell sind dann kannst du mit dem Zeiger auf die Basisklasse die Methoden der Abgeleiteten Klasse verwenden.</p>
<p>Ich hoffe das hilft dir jetzt den Sinn etwas besser zu verstehen.</p>
<p>BR<br />
Vinzenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1859183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1859183</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Sun, 21 Feb 2010 17:21:55 GMT</pubDate></item><item><title><![CDATA[Reply to virtuell - wo ist der Sinn? on Sun, 21 Feb 2010 17:39:46 GMT]]></title><description><![CDATA[<p>definitiv danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1859191</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1859191</guid><dc:creator><![CDATA[Jud4s]]></dc:creator><pubDate>Sun, 21 Feb 2010 17:39:46 GMT</pubDate></item></channel></rss>