<?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[Klassen in Klassen (C++)]]></title><description><![CDATA[<p>Hallo,</p>
<p>Seit längerem schon programmiere ich in C, und habe ich kürzlich angefangen C++ zu lernen. Um praktische Erfahrung mit C++ zu sammeln bin ich gerade dabei, mein letztes Projekt, ein Computergegner für das Spiel &quot;Schiffe versenken&quot;, welches ich in C geschrieben habe, in C++ zu übersetzen.<br />
Mein Hauptaugenmerk lag dabei zunächst in der Erstellung von Klassen, welche die Objekte des Spiels repräsentieren (Spielfeld, Schiffe und Spieler) .<br />
In C habe ich diese Objekte mit structs realisiert, wobei das Spielfeld und die Schiffe Teil der Spieler-struct sind:</p>
<p>struct spieler_<br />
{</p>
<p>struct schiff_ schiff[ANZAHL_SCHIFFE];<br />
int feld[BREITE][HOEHE];<br />
// ...</p>
<p>} spieler[SPIELERANZAHL];</p>
<p>Das hat auch problemlos funktioniert.<br />
Dies versuchte ich nun mit Klassen zu realisieren. Während die Erstellung der Klassen &quot;schiff&quot; und &quot;feld&quot; keine Probleme bereitete, ließen sie sich nicht in die Klasse &quot;spieler&quot; eingliedern.</p>
<p>Leider habe ich trotz intensiver Suche auf einschlägigen Seiten keine wirkliche Lösung für dieses Problem gefunden.</p>
<p>Gibt es eine Möglichkeit wie ich eine Klasse innerhalb einer anderen Klasse deklariere, ohne eine &quot;nested class&quot; innerhalb der Klasse zu erstellen? Gibt es eine Möglichkeit die der Vorgehensweise bei structs in structs ähnelt?<br />
Wenn ja, wie kann ich der inneren Klasse dann die Parameter für den Konstruktor übergeben?</p>
<p>Für Hilfe wäre ich sehr dankbar <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="🙂"
    /><br />
Tobias</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/309992/klassen-in-klassen-c</link><generator>RSS for Node</generator><lastBuildDate>Wed, 05 Aug 2026 02:34:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/309992.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 01 Nov 2012 08:43:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klassen in Klassen (C++) on Thu, 01 Nov 2012 08:44:44 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Seit längerem schon programmiere ich in C, und habe ich kürzlich angefangen C++ zu lernen. Um praktische Erfahrung mit C++ zu sammeln bin ich gerade dabei, mein letztes Projekt, ein Computergegner für das Spiel &quot;Schiffe versenken&quot;, welches ich in C geschrieben habe, in C++ zu übersetzen.<br />
Mein Hauptaugenmerk lag dabei zunächst in der Erstellung von Klassen, welche die Objekte des Spiels repräsentieren (Spielfeld, Schiffe und Spieler) .<br />
In C habe ich diese Objekte mit structs realisiert, wobei das Spielfeld und die Schiffe Teil der Spieler-struct sind:</p>
<p>struct spieler_<br />
{</p>
<p>struct schiff_ schiff[ANZAHL_SCHIFFE];<br />
int feld[BREITE][HOEHE];<br />
// ...</p>
<p>} spieler[SPIELERANZAHL];</p>
<p>Das hat auch problemlos funktioniert.<br />
Dies versuchte ich nun mit Klassen zu realisieren. Während die Erstellung der Klassen &quot;schiff&quot; und &quot;feld&quot; keine Probleme bereitete, ließen sie sich nicht in die Klasse &quot;spieler&quot; eingliedern.</p>
<p>Leider habe ich trotz intensiver Suche auf einschlägigen Seiten keine wirkliche Lösung für dieses Problem gefunden.</p>
<p>Gibt es eine Möglichkeit wie ich eine Klasse innerhalb einer anderen Klasse deklariere, ohne eine &quot;nested class&quot; innerhalb der Klasse zu erstellen? Gibt es eine Möglichkeit die der Vorgehensweise bei structs in structs ähnelt?<br />
Wenn ja, wie kann ich der inneren Klasse dann die Parameter für den Konstruktor übergeben?</p>
<p>Für Hilfe wäre ich sehr dankbar <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="🙂"
    /><br />
Tobias</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2266136</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2266136</guid><dc:creator><![CDATA[dunkelbunt42]]></dc:creator><pubDate>Thu, 01 Nov 2012 08:44:44 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen (C++) on Thu, 01 Nov 2012 08:56:14 GMT]]></title><description><![CDATA[<p>dunkelbunt42 schrieb:</p>
<blockquote>
<p>Gibt es eine Möglichkeit wie ich eine Klasse innerhalb einer anderen Klasse deklariere, ohne eine &quot;nested class&quot; innerhalb der Klasse zu erstellen? Gibt es eine Möglichkeit die der Vorgehensweise bei structs in structs ähnelt?</p>
</blockquote>
<p>Meinst du sowas?</p>
<pre><code class="language-cpp">class Foo {
  // …
}

class Bar {
  // …
}

class Foobar {
  Foo just_a_foo;
  Bar this_is_a_bar;
}
</code></pre>
<blockquote>
<p>Wenn ja, wie kann ich der inneren Klasse dann die Parameter für den Konstruktor übergeben?</p>
</blockquote>
<p>Ungefähr so:</p>
<pre><code class="language-cpp">class Foobar {
  Foo just_a_foo;
  Bar this_is_a_bar;
public:
  Foobar(const std::string&amp; foo_param, int bar_param)
  : just_a_foo(foo_param), this_is_a_bar(bar_param)
  {}
}
</code></pre>
<p>Natürlich komplett ungetestet und nur schnell so dahingeschrieben, aber du siehst wohl, worauf es hinausläuft.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2266139</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2266139</guid><dc:creator><![CDATA[nman]]></dc:creator><pubDate>Thu, 01 Nov 2012 08:56:14 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen (C++) on Thu, 01 Nov 2012 15:15:11 GMT]]></title><description><![CDATA[<p>ah, danke schön <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="🙂"
    /> mein Problem war die Übergabe der Parameter an die inneren Klassen. Aber jetzt geht es <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="🙂"
    /> Danke nochmal</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2266250</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2266250</guid><dc:creator><![CDATA[dunkelbunt42]]></dc:creator><pubDate>Thu, 01 Nov 2012 15:15:11 GMT</pubDate></item><item><title><![CDATA[Reply to Klassen in Klassen (C++) on Thu, 01 Nov 2012 15:39:25 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/u1819" rel="nofollow">rüdiger</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/f8" rel="nofollow">Rund um die Programmierung</a> in das Forum <a href="http://www.c-plusplus.net/forum/f15" rel="nofollow">C++ (auch C++0x und C++11)</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/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/2266267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2266267</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Thu, 01 Nov 2012 15:39:25 GMT</pubDate></item></channel></rss>