<?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[so-eine-vererbungs-geschichte.]]></title><description><![CDATA[<p>hi,</p>
<p>ich habe eine basisklasse und ein paar davon abgeleitete. und jede von denen soll eine bestimmte funktion (flush()) aufrufen, wenn sie zerstört wird.</p>
<p>frage: kann ich das &quot;irgendwie schön&quot; (vererbungstechnisch) machen, oder soll ich das einfach überall reinschreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/134573/so-eine-vererbungs-geschichte</link><generator>RSS for Node</generator><lastBuildDate>Fri, 28 Aug 2026 17:31:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/134573.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 26 Jan 2006 22:36:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Thu, 26 Jan 2006 22:36:50 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>ich habe eine basisklasse und ein paar davon abgeleitete. und jede von denen soll eine bestimmte funktion (flush()) aufrufen, wenn sie zerstört wird.</p>
<p>frage: kann ich das &quot;irgendwie schön&quot; (vererbungstechnisch) machen, oder soll ich das einfach überall reinschreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/977501</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/977501</guid><dc:creator><![CDATA[bärnd]]></dc:creator><pubDate>Thu, 26 Jan 2006 22:36:50 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Thu, 26 Jan 2006 22:48:30 GMT]]></title><description><![CDATA[<p>Wie wär's im Destruktor der Basisklasse?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/977507</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/977507</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Thu, 26 Jan 2006 22:48:30 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Thu, 26 Jan 2006 23:39:31 GMT]]></title><description><![CDATA[<p>Jester schrieb:</p>
<blockquote>
<p>Wie wär's im Destruktor der Basisklasse?</p>
</blockquote>
<p>dann gehts aber nicht <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/977522</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/977522</guid><dc:creator><![CDATA[bärnd]]></dc:creator><pubDate>Thu, 26 Jan 2006 23:39:31 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Thu, 26 Jan 2006 23:39:58 GMT]]></title><description><![CDATA[<p>Nein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/977523</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/977523</guid><dc:creator><![CDATA[doch!]]></dc:creator><pubDate>Thu, 26 Jan 2006 23:39:58 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Fri, 27 Jan 2006 12:43:55 GMT]]></title><description><![CDATA[<p>Jester schrieb:</p>
<blockquote>
<p>Wie wär's im Destruktor der Basisklasse?</p>
</blockquote>
<p>Das funktioniert allerdings nur wie gewünscht, wenn flush selbst nicht virtuell ist. Andernfalls hilft eine benannte Destruktionsfunktion nach dem Template-Method-Pattern.<br />
Grob:</p>
<pre><code class="language-cpp">class Base {
public:
    void destroy() {
         flush();
         delete this;
     }
protected:
    virtual ~Base();
    virtual void flush() = 0;
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/977872</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/977872</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Fri, 27 Jan 2006 12:43:55 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Fri, 27 Jan 2006 20:49:56 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>sorry, ic versteh's nicht. was soll ich jetzt damit machen? destroy() in ~Base() aufrufen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/978476</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978476</guid><dc:creator><![CDATA[bärnd]]></dc:creator><pubDate>Fri, 27 Jan 2006 20:49:56 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Fri, 27 Jan 2006 22:38:07 GMT]]></title><description><![CDATA[<p>Ist die flush() Funktion eine Elementfunktion oder eine Nichtelementfunktion?</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/978587</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978587</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Fri, 27 Jan 2006 22:38:07 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Fri, 27 Jan 2006 22:54:45 GMT]]></title><description><![CDATA[<p>joomoo schrieb:</p>
<blockquote>
<p>Ist die flush() Funktion eine Elementfunktion oder eine Nichtelementfunktion?</p>
<p>mfg.</p>
</blockquote>
<p>eine member-funktion. (muss virtuell sein, so wie's HumeSikkins skizziert hat)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/978592</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978592</guid><dc:creator><![CDATA[bärnd]]></dc:creator><pubDate>Fri, 27 Jan 2006 22:54:45 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Fri, 27 Jan 2006 23:04:04 GMT]]></title><description><![CDATA[<p>bärnd schrieb:</p>
<blockquote>
<p>joomoo schrieb:</p>
<blockquote>
<p>Ist die flush() Funktion eine Elementfunktion oder eine Nichtelementfunktion?</p>
<p>mfg.</p>
</blockquote>
<p>eine member-funktion. (muss virtuell sein, so wie's HumeSikkins skizziert hat)</p>
</blockquote>
<p>Dann meint er glaub ich, dass du die destroy() funktino in den destruktoren der abgeleiteten klassen aufrufen sollst.</p>
<p>mfg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/978595</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978595</guid><dc:creator><![CDATA[joomoo]]></dc:creator><pubDate>Fri, 27 Jan 2006 23:04:04 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Sat, 28 Jan 2006 10:19:37 GMT]]></title><description><![CDATA[<p>aber dann kann ich doch auch gleich flush() aufrufen <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/978713</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978713</guid><dc:creator><![CDATA[bärnd]]></dc:creator><pubDate>Sat, 28 Jan 2006 10:19:37 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Sat, 28 Jan 2006 10:53:06 GMT]]></title><description><![CDATA[<p>Ich denke mal du sollst alle Objekte mit new anlegen und mit destroy wieder zerstören.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/978741</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978741</guid><dc:creator><![CDATA[,,,,,,,,,,]]></dc:creator><pubDate>Sat, 28 Jan 2006 10:53:06 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Sat, 28 Jan 2006 10:53:27 GMT]]></title><description><![CDATA[<p>Nein man du sollst das Objekt dynamisch anlegen und dann mit der Methode destroy löschen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/978743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978743</guid><dc:creator><![CDATA[aaa]]></dc:creator><pubDate>Sat, 28 Jan 2006 10:53:27 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Sat, 28 Jan 2006 10:54:18 GMT]]></title><description><![CDATA[<p>??????????? <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="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/978744</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978744</guid><dc:creator><![CDATA[,,,,,,,,,,]]></dc:creator><pubDate>Sat, 28 Jan 2006 10:54:18 GMT</pubDate></item><item><title><![CDATA[Reply to so-eine-vererbungs-geschichte. on Sat, 28 Jan 2006 11:03:17 GMT]]></title><description><![CDATA[<p>aaa schrieb:</p>
<blockquote>
<p>Nein man du sollst das Objekt dynamisch anlegen und dann mit der Methode destroy löschen.</p>
</blockquote>
<p>ach so. ok. aber ich sehe immer noch nicht die eleganz dieser lösung...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/978752</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/978752</guid><dc:creator><![CDATA[bärnd]]></dc:creator><pubDate>Sat, 28 Jan 2006 11:03:17 GMT</pubDate></item></channel></rss>