<?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[nichtdeklarierter Bezeichner bei Übergabe einer Klasse]]></title><description><![CDATA[<p>Hallo...</p>
<p>Ich hab eine Klasse die als Referenz an diverse Funktionen anderer Klassen übergeben werden soll.</p>
<p>Soweit so gut, bei einer Klasse funktioniert das.<br />
In einer anderen Klasse jedoch meckert der Compilier VC++ 6 immer über einen nichtdeklarierten Bezeichner...</p>
<p>Die HeaderDatei ist natürlich inkludiert.</p>
<p>Ich poste mal ein Beispiel in der Hoffnung daß der Fehler da schon versteckt ist:</p>
<pre><code class="language-cpp">#ifndef C_MUCK_HPP
#define C_MUCK_HPP

#include &quot;C_Maindeck.hpp&quot;

class C_Muck{

    /* some code*/
}
#endif
</code></pre>
<p>Die Übergabe der Klasse C_Muck an die nächste läuft Problemlos.</p>
<pre><code class="language-cpp">#ifndef C_PLAYER_HPP
#define C_PLAYER_HPP

#include &quot;C_Muck.hpp&quot;
#include &quot;C_MainDeck.hpp&quot;

class C_Player{
        friend class C_Game;

	public:
		bool MuckCard(C_Muck&amp; Muck, C_MainDeck&amp; MainDeck);

        /* some code */

} class Player
#endif
</code></pre>
<p>Die Klasse jetzt (MainDeck) soll ebenfalls eine Referenz erhalten, nimmt sie aber nicht an.<br />
Sprich C_Muck ist ein nicht deklarierter Bezeichner ab der Stelle wo ein Funktionskopf die Referenz erwartet.</p>
<pre><code class="language-cpp">#ifndef C_MAINDECK_HPP
#define C_MAINDECK_HPP

#include &quot;C_Muck.hpp&quot;
#include &quot;GetRandom.hpp&quot;
#include &quot;C_Framework.hpp&quot;
#include &quot;C_Sprite.hpp&quot;

#include &lt;list&gt;
#include &lt;iostream&gt;

class C_MainDeck {
        public:
             void WillNicht(C_Muck&amp; Muck);   // Das geht nicht

       /* some code */
}
#endif
</code></pre>
<p>Die Klasse C_Muck selbst wird in einer anderen Klasse als MemberVariable erzeugt.</p>
<pre><code class="language-cpp">#ifndef GAME_HPP
#define GAME_HPP

#include &quot;C_Player.hpp&quot;
#include &quot;C_Muck.hpp&quot;
#include &quot;C_MainDeck.hpp&quot;
#include &quot;Background.hpp&quot;

class C_Game{

	public:
		void Run ();
		C_Game();
	private:

		C_Muck	Muck;		// HIER WIRD DIE INSTANZ ERSTELLT
                                        // public ändert nichts
         /*
               some code
         */
}
#endif
</code></pre>
<p>C_Game wird in main erstellt.....</p>
<p>Btw arbeiten diverse MemberFunktionen der Muck klasse mit Referenzen der Klasse die C_Muck nicht annimmt (C_MainDeck).<br />
Liegt darin der Fehler?</p>
<p>/bin/verwirrt</p>
<p>Danke...</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/190340/nichtdeklarierter-bezeichner-bei-übergabe-einer-klasse</link><generator>RSS for Node</generator><lastBuildDate>Fri, 25 Sep 2026 14:59:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/190340.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 21 Aug 2007 18:06:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to nichtdeklarierter Bezeichner bei Übergabe einer Klasse on Tue, 21 Aug 2007 18:06:43 GMT]]></title><description><![CDATA[<p>Hallo...</p>
<p>Ich hab eine Klasse die als Referenz an diverse Funktionen anderer Klassen übergeben werden soll.</p>
<p>Soweit so gut, bei einer Klasse funktioniert das.<br />
In einer anderen Klasse jedoch meckert der Compilier VC++ 6 immer über einen nichtdeklarierten Bezeichner...</p>
<p>Die HeaderDatei ist natürlich inkludiert.</p>
<p>Ich poste mal ein Beispiel in der Hoffnung daß der Fehler da schon versteckt ist:</p>
<pre><code class="language-cpp">#ifndef C_MUCK_HPP
#define C_MUCK_HPP

#include &quot;C_Maindeck.hpp&quot;

class C_Muck{

    /* some code*/
}
#endif
</code></pre>
<p>Die Übergabe der Klasse C_Muck an die nächste läuft Problemlos.</p>
<pre><code class="language-cpp">#ifndef C_PLAYER_HPP
#define C_PLAYER_HPP

#include &quot;C_Muck.hpp&quot;
#include &quot;C_MainDeck.hpp&quot;

class C_Player{
        friend class C_Game;

	public:
		bool MuckCard(C_Muck&amp; Muck, C_MainDeck&amp; MainDeck);

        /* some code */

} class Player
#endif
</code></pre>
<p>Die Klasse jetzt (MainDeck) soll ebenfalls eine Referenz erhalten, nimmt sie aber nicht an.<br />
Sprich C_Muck ist ein nicht deklarierter Bezeichner ab der Stelle wo ein Funktionskopf die Referenz erwartet.</p>
<pre><code class="language-cpp">#ifndef C_MAINDECK_HPP
#define C_MAINDECK_HPP

#include &quot;C_Muck.hpp&quot;
#include &quot;GetRandom.hpp&quot;
#include &quot;C_Framework.hpp&quot;
#include &quot;C_Sprite.hpp&quot;

#include &lt;list&gt;
#include &lt;iostream&gt;

class C_MainDeck {
        public:
             void WillNicht(C_Muck&amp; Muck);   // Das geht nicht

       /* some code */
}
#endif
</code></pre>
<p>Die Klasse C_Muck selbst wird in einer anderen Klasse als MemberVariable erzeugt.</p>
<pre><code class="language-cpp">#ifndef GAME_HPP
#define GAME_HPP

#include &quot;C_Player.hpp&quot;
#include &quot;C_Muck.hpp&quot;
#include &quot;C_MainDeck.hpp&quot;
#include &quot;Background.hpp&quot;

class C_Game{

	public:
		void Run ();
		C_Game();
	private:

		C_Muck	Muck;		// HIER WIRD DIE INSTANZ ERSTELLT
                                        // public ändert nichts
         /*
               some code
         */
}
#endif
</code></pre>
<p>C_Game wird in main erstellt.....</p>
<p>Btw arbeiten diverse MemberFunktionen der Muck klasse mit Referenzen der Klasse die C_Muck nicht annimmt (C_MainDeck).<br />
Liegt darin der Fehler?</p>
<p>/bin/verwirrt</p>
<p>Danke...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1349239</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1349239</guid><dc:creator><![CDATA[Joschua]]></dc:creator><pubDate>Tue, 21 Aug 2007 18:06:43 GMT</pubDate></item><item><title><![CDATA[Reply to nichtdeklarierter Bezeichner bei Übergabe einer Klasse on Tue, 21 Aug 2007 18:27:52 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#ifndef C_MUCK_HPP
#define C_MUCK_HPP

#include &quot;C_Maindeck.hpp&quot;

class C_Muck{
</code></pre>
<p>... da das include raus! das kann nicht gehen ... er braucht ja in der inkludierten Datei deine Klasse C_Muck ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1349254</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1349254</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Tue, 21 Aug 2007 18:27:52 GMT</pubDate></item><item><title><![CDATA[Reply to nichtdeklarierter Bezeichner bei Übergabe einer Klasse on Tue, 21 Aug 2007 18:38:47 GMT]]></title><description><![CDATA[<blockquote>
<p>... da das include raus! das kann nicht gehen ... er braucht ja in der inkludierten Datei deine Klasse C_Muck ...</p>
</blockquote>
<p>Schoen waer´s , aber leider braucht C_Muck auch C_MainDeck...</p>
<p>Wenn ich das #include C_MainDeck rausnehme kann die Klasse nicht mehr auf die Andere zugreifen...</p>
<p>Also genaugenommem arbeiten BEIDE Klassen mit Referenzen der jeweils anderen</p>
<p>/bin/völligverwirrt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1349262</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1349262</guid><dc:creator><![CDATA[Joschua]]></dc:creator><pubDate>Tue, 21 Aug 2007 18:38:47 GMT</pubDate></item><item><title><![CDATA[Reply to nichtdeklarierter Bezeichner bei Übergabe einer Klasse on Tue, 21 Aug 2007 18:43:16 GMT]]></title><description><![CDATA[<p>Such mal nach &quot;Forwärtsdeklaration&quot; oder &quot;Forward declaration&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1349267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1349267</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Tue, 21 Aug 2007 18:43:16 GMT</pubDate></item><item><title><![CDATA[Reply to nichtdeklarierter Bezeichner bei Übergabe einer Klasse on Tue, 21 Aug 2007 18:59:59 GMT]]></title><description><![CDATA[<p>Mit der Referenz ist in Ordnung(forward decleration) ... aber nicht mit einer Instanz!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1349274</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1349274</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Tue, 21 Aug 2007 18:59:59 GMT</pubDate></item><item><title><![CDATA[Reply to nichtdeklarierter Bezeichner bei Übergabe einer Klasse on Tue, 21 Aug 2007 19:35:07 GMT]]></title><description><![CDATA[<p>hmmm...<br />
Das mit der Vorwärtsdeklaration klingt vernünftig.<br />
Hab Testweise mal ein wenig umgebaut. Klappt noch nicht wirklich, da die Klasse noch undefiniert ist...</p>
<p>wird schon...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1349290</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1349290</guid><dc:creator><![CDATA[Joschua]]></dc:creator><pubDate>Tue, 21 Aug 2007 19:35:07 GMT</pubDate></item></channel></rss>