<?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[Funktion aus &amp;quot;parallem&amp;quot; Objekt aufrufen oder: Compiler zwingen, eine Memberfunktion aufzurufen]]></title><description><![CDATA[<p>hallo,</p>
<p>hab ein Saudummes problem:<br />
mehrere Klassen, wobei alle von einer abgeleitet sind</p>
<pre><code>mother
   /        |         \
child_1    child_2  ...   child_Problem
</code></pre>
<p>child_Problem: erwartet bei der Erzeugung einen Zeiger auf &quot;mother&quot;.</p>
<p>child_x erzeugt nun ein Objekt vom Typ &quot;child_Problem&quot; und übergibt einen Zeiger<br />
auf sich selbst (ja, auch Kinder können Mütter sein ;-), wodurch child_Problem<br />
auf child_x zugreifen kann.</p>
<p>Problem:<br />
child_x erweitert mother um eine Funktion foo_x();</p>
<p>Wie ruf ich diese Funktion jetzt von child_Problem aus auf?</p>
<p>logischerweise meckert der Compiler,<br />
da child_Problem ja nur einen Zeiger auf &quot;mother&quot;, nicht aber auf &quot;child_x&quot; hat<br />
und somit foo_x() nicht bekannt ist.</p>
<p>Ein typecast wäre vermutlich die allereinfachste Lösung,<br />
nur hat mal ein child_x ein child_Problem-Objekt, mal ein child_y ein child_Problem-Objekt.</p>
<p>Somit fällt der cast flach.</p>
<p>Zusammenfassung:<br />
wie zwinge ich den Compiler, dass er mir blind vertraut und foo_x() einfach<br />
aufruft, auch wenn er dabei Bauchweh kriegt?</p>
<p>Thx<br />
Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/118538/funktion-aus-quot-parallem-quot-objekt-aufrufen-oder-compiler-zwingen-eine-memberfunktion-aufzurufen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 12:29:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/118538.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 21 Aug 2005 17:59:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktion aus &amp;quot;parallem&amp;quot; Objekt aufrufen oder: Compiler zwingen, eine Memberfunktion aufzurufen on Sun, 21 Aug 2005 18:00:43 GMT]]></title><description><![CDATA[<p>hallo,</p>
<p>hab ein Saudummes problem:<br />
mehrere Klassen, wobei alle von einer abgeleitet sind</p>
<pre><code>mother
   /        |         \
child_1    child_2  ...   child_Problem
</code></pre>
<p>child_Problem: erwartet bei der Erzeugung einen Zeiger auf &quot;mother&quot;.</p>
<p>child_x erzeugt nun ein Objekt vom Typ &quot;child_Problem&quot; und übergibt einen Zeiger<br />
auf sich selbst (ja, auch Kinder können Mütter sein ;-), wodurch child_Problem<br />
auf child_x zugreifen kann.</p>
<p>Problem:<br />
child_x erweitert mother um eine Funktion foo_x();</p>
<p>Wie ruf ich diese Funktion jetzt von child_Problem aus auf?</p>
<p>logischerweise meckert der Compiler,<br />
da child_Problem ja nur einen Zeiger auf &quot;mother&quot;, nicht aber auf &quot;child_x&quot; hat<br />
und somit foo_x() nicht bekannt ist.</p>
<p>Ein typecast wäre vermutlich die allereinfachste Lösung,<br />
nur hat mal ein child_x ein child_Problem-Objekt, mal ein child_y ein child_Problem-Objekt.</p>
<p>Somit fällt der cast flach.</p>
<p>Zusammenfassung:<br />
wie zwinge ich den Compiler, dass er mir blind vertraut und foo_x() einfach<br />
aufruft, auch wenn er dabei Bauchweh kriegt?</p>
<p>Thx<br />
Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/855545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/855545</guid><dc:creator><![CDATA[anonymus]]></dc:creator><pubDate>Sun, 21 Aug 2005 18:00:43 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus &amp;quot;parallem&amp;quot; Objekt aufrufen oder: Compiler zwingen, eine Memberfunktion aufzurufen on Sun, 21 Aug 2005 18:01:58 GMT]]></title><description><![CDATA[<p>- Bösen Cast machen wenn du genau weißt was du hast?<br />
- Sag ihm über ein Template was sein Mutter-Typ ist</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/855546</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/855546</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Sun, 21 Aug 2005 18:01:58 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion aus &amp;quot;parallem&amp;quot; Objekt aufrufen oder: Compiler zwingen, eine Memberfunktion aufzurufen on Mon, 22 Aug 2005 13:19:18 GMT]]></title><description><![CDATA[<p>SideWinder schrieb:</p>
<blockquote>
<p>- Bösen Cast machen wenn du genau weißt was du hast?<br />
- Sag ihm über ein Template was sein Mutter-Typ ist</p>
</blockquote>
<p>Stümmt...</p>
<p>templates hören sich gut an <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>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/856143</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/856143</guid><dc:creator><![CDATA[anonymus]]></dc:creator><pubDate>Mon, 22 Aug 2005 13:19:18 GMT</pubDate></item></channel></rss>