<?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[gegenseitiges aufrufen von Klassen]]></title><description><![CDATA[<p>Hallo,<br />
um nicht etwas vielleicht zu kompliziert zu beschreiben hier mal die Ausgangssituation. Jede Klasse hat eine eigene .hpp und .cpp Datei. Vereinfacht geschrieben:</p>
<pre><code class="language-cpp">class Menu
{
}
</code></pre>
<pre><code class="language-cpp">class Window
{
  Menu
  BoxA
  BoxB
}
</code></pre>
<pre><code class="language-cpp">class BoxA
{
  Menu
}
</code></pre>
<pre><code class="language-cpp">class BoxB
{
  Menu
}
</code></pre>
<p>Nun muss natürlich Klasse Menu auf bestimmte Ereignisse reagieren und es den Klassen Window oder Box mitteilen. Mein Ansatzpunkt war der Klasse Menu jeweils einen Zeiger auf die anderen Klassen zu übergeben um die entsprechende Methode in der jeweiligen Klasse aufrufen zu können. Wieder vereinfacht:</p>
<pre><code class="language-cpp">class Menu
{
  Window*
  BoxA*
  BoxB*
}
</code></pre>
<p>Dadurch muss ich natürlich dann aber jede dieser Klassen und alle weiteren Box-Klassen vorwärtsdeklarieren und sie kann als Element jeweils nur als Zeiger definieren.</p>
<p>Bisher habe ich nichts dazu finden können, vielleicht denke ich ja auch in die falsche Richtung. Deshalb hier meine Frage, gibt es eine andere oder bessere Herangehensweise, Ansatz, Lösung für dieses Problem?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/257861/gegenseitiges-aufrufen-von-klassen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 09 Sep 2026 19:25:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/257861.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 04 Jan 2010 10:56:25 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to gegenseitiges aufrufen von Klassen on Mon, 04 Jan 2010 10:56:25 GMT]]></title><description><![CDATA[<p>Hallo,<br />
um nicht etwas vielleicht zu kompliziert zu beschreiben hier mal die Ausgangssituation. Jede Klasse hat eine eigene .hpp und .cpp Datei. Vereinfacht geschrieben:</p>
<pre><code class="language-cpp">class Menu
{
}
</code></pre>
<pre><code class="language-cpp">class Window
{
  Menu
  BoxA
  BoxB
}
</code></pre>
<pre><code class="language-cpp">class BoxA
{
  Menu
}
</code></pre>
<pre><code class="language-cpp">class BoxB
{
  Menu
}
</code></pre>
<p>Nun muss natürlich Klasse Menu auf bestimmte Ereignisse reagieren und es den Klassen Window oder Box mitteilen. Mein Ansatzpunkt war der Klasse Menu jeweils einen Zeiger auf die anderen Klassen zu übergeben um die entsprechende Methode in der jeweiligen Klasse aufrufen zu können. Wieder vereinfacht:</p>
<pre><code class="language-cpp">class Menu
{
  Window*
  BoxA*
  BoxB*
}
</code></pre>
<p>Dadurch muss ich natürlich dann aber jede dieser Klassen und alle weiteren Box-Klassen vorwärtsdeklarieren und sie kann als Element jeweils nur als Zeiger definieren.</p>
<p>Bisher habe ich nichts dazu finden können, vielleicht denke ich ja auch in die falsche Richtung. Deshalb hier meine Frage, gibt es eine andere oder bessere Herangehensweise, Ansatz, Lösung für dieses Problem?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1832037</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1832037</guid><dc:creator><![CDATA[stefkowa]]></dc:creator><pubDate>Mon, 04 Jan 2010 10:56:25 GMT</pubDate></item><item><title><![CDATA[Reply to gegenseitiges aufrufen von Klassen on Mon, 04 Jan 2010 11:25:54 GMT]]></title><description><![CDATA[<p>Wie wäre es mit einer übergeordneten Instanz, zum Beispiel einer Klasse windowmanager? Oder einer Kommunikationsklasse?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1832052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1832052</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Mon, 04 Jan 2010 11:25:54 GMT</pubDate></item><item><title><![CDATA[Reply to gegenseitiges aufrufen von Klassen on Mon, 04 Jan 2010 13:12:00 GMT]]></title><description><![CDATA[<p>In die Richtung hatte ich auch schon überlegt, da komme ich auch nicht so richtig weiter. Bei mir kommt es immer aufs selbe raus, nur mit einer weiteren Klasse dazwischen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1832124</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1832124</guid><dc:creator><![CDATA[stefkowa]]></dc:creator><pubDate>Mon, 04 Jan 2010 13:12:00 GMT</pubDate></item><item><title><![CDATA[Reply to gegenseitiges aufrufen von Klassen on Mon, 04 Jan 2010 16:33:23 GMT]]></title><description><![CDATA[<p>Also eine gewisse solche Zyklik wirst du wahrscheinlich schon haben, aber wenn du weisst, wie man damit umgeht, dann ist das aber auch kein Problem.<br />
Sieh dir mal dazu diesen Beitrag an:<br />
<a href="http://www.drakon.ch/?id=&amp;offset=2&amp;mobile=0&amp;show_entry=77" rel="nofollow">http://www.drakon.ch/?id=&amp;offset=2&amp;mobile=0&amp;show_entry=77</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1832285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1832285</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Mon, 04 Jan 2010 16:33:23 GMT</pubDate></item><item><title><![CDATA[Reply to gegenseitiges aufrufen von Klassen on Mon, 04 Jan 2010 17:52:02 GMT]]></title><description><![CDATA[<p>Das ist doch das was ich jetzt habe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1832370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1832370</guid><dc:creator><![CDATA[stefkowa]]></dc:creator><pubDate>Mon, 04 Jan 2010 17:52:02 GMT</pubDate></item><item><title><![CDATA[Reply to gegenseitiges aufrufen von Klassen on Mon, 04 Jan 2010 17:56:56 GMT]]></title><description><![CDATA[<p>Ja. Nun sehe ich das Problem nicht ganz.</p>
<p>Du kannst die Elemente ja auch z.B von einer Basisklasse erben lassen und in Window eine Liste von denen halten oder so.</p>
<p>Was genau willst du denn nicht haben oder anderst machen? So etwas, wie du da machst ist eigentlich normal und nicht unüblich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1832375</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1832375</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Mon, 04 Jan 2010 17:56:56 GMT</pubDate></item></channel></rss>