<?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[Fehler beim Aufruf einer Methode]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich habe mal ne Frage und zwar erstelle ich mir eine Klasse mit folgendem Header</p>
<pre><code>...
#include &quot;Textur.h&quot; //Header von Textur Klasse
#include &quot;Wuerfel.h&quot; //Header von Wuerfel Klasse
using namespace std;

class Textur;
class Wuerfel;

class GLUTFenster
{
private:
...
	Textur *eineTextur;
	...
public:
	...
	Wuerfel *einWuerfel;
	...

};
</code></pre>
<p>in der .cpp dann sage ich im Konstruktor</p>
<p>eineTextur = new Textur(); sowie einWuerfel= new Wuerfel();</p>
<p>Es kann sein, dass einige das nicht so gut finden, aber da ich von JAVA herkomme bin ich es so gewohnt! <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>So nun kommt meine erste Frage:<br />
Wenn ich nun z.B.: einWuerfel-&gt;zeichnewuerfel(); aufrufe gibt mir der Compiler folgenden Fehler aus.</p>
<p>&quot;error C2228: Der linke Teil von '-&gt;zeichnewuerfel' muss eine Klasse/Struktur/Union sein&quot;</p>
<p>Wenn ich das ganze global anlege gibt es keine Probleme, nur finde ich globale objekte eher bescheiden! Also einfach Wuerfel *test = new Wuerfel(); irgendwo in den Code schreiben und die Sache läuft, kann dann auch die ganzen Methoden auswählen, sobald aber das ganze innerhalb der Klasse steht zeigt er mir diese nicht mehr an!</p>
<p>Als Entwicklungsumgebung benutze ich Microsoft Visual C++, ist zwar in die Jahre gekommen, finde ich für C++ besser, als .NET 2005</p>
<p>Gruß</p>
<p>Marcel <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>
]]></description><link>https://www.c-plusplus.net/forum/topic/140540/fehler-beim-aufruf-einer-methode</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 04:23:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/140540.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 15 Mar 2006 15:31:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Wed, 15 Mar 2006 15:31:22 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich habe mal ne Frage und zwar erstelle ich mir eine Klasse mit folgendem Header</p>
<pre><code>...
#include &quot;Textur.h&quot; //Header von Textur Klasse
#include &quot;Wuerfel.h&quot; //Header von Wuerfel Klasse
using namespace std;

class Textur;
class Wuerfel;

class GLUTFenster
{
private:
...
	Textur *eineTextur;
	...
public:
	...
	Wuerfel *einWuerfel;
	...

};
</code></pre>
<p>in der .cpp dann sage ich im Konstruktor</p>
<p>eineTextur = new Textur(); sowie einWuerfel= new Wuerfel();</p>
<p>Es kann sein, dass einige das nicht so gut finden, aber da ich von JAVA herkomme bin ich es so gewohnt! <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>So nun kommt meine erste Frage:<br />
Wenn ich nun z.B.: einWuerfel-&gt;zeichnewuerfel(); aufrufe gibt mir der Compiler folgenden Fehler aus.</p>
<p>&quot;error C2228: Der linke Teil von '-&gt;zeichnewuerfel' muss eine Klasse/Struktur/Union sein&quot;</p>
<p>Wenn ich das ganze global anlege gibt es keine Probleme, nur finde ich globale objekte eher bescheiden! Also einfach Wuerfel *test = new Wuerfel(); irgendwo in den Code schreiben und die Sache läuft, kann dann auch die ganzen Methoden auswählen, sobald aber das ganze innerhalb der Klasse steht zeigt er mir diese nicht mehr an!</p>
<p>Als Entwicklungsumgebung benutze ich Microsoft Visual C++, ist zwar in die Jahre gekommen, finde ich für C++ besser, als .NET 2005</p>
<p>Gruß</p>
<p>Marcel <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1016874</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1016874</guid><dc:creator><![CDATA[MarcelZe]]></dc:creator><pubDate>Wed, 15 Mar 2006 15:31:22 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Wed, 15 Mar 2006 16:03:08 GMT]]></title><description><![CDATA[<p>Hallo,<br />
poste doch bitte mal den (minimalen) Code, der den Fehler verursacht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1016918</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1016918</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Wed, 15 Mar 2006 16:03:08 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Wed, 15 Mar 2006 16:08:18 GMT]]></title><description><![CDATA[<p>der 'new'-operator gibt einen Zeiger zurueck , d.h. die linke Seite muss heissen: 'eineTextur* = new Textur();' ( die Fehlermeldung bedeutet uebrigens genau das , naemlich dass der linke Teil auf eine Klasse/Struktur/Union ZEIGEN muss )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1016924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1016924</guid><dc:creator><![CDATA[bumbytie]]></dc:creator><pubDate>Wed, 15 Mar 2006 16:08:18 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Wed, 15 Mar 2006 16:09:39 GMT]]></title><description><![CDATA[<p>oups, sorry , du daklarierst ja als pointer <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1016927</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1016927</guid><dc:creator><![CDATA[bumbytie]]></dc:creator><pubDate>Wed, 15 Mar 2006 16:09:39 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Wed, 15 Mar 2006 16:12:12 GMT]]></title><description><![CDATA[<p>Jo, und die Syntax eineVariable* = &lt;adresse&gt; gibt es in C/C++ sowieso nicht, das wird aufgelöst zu eineVariable *= &lt;adresse&gt; (Multiplikation)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1016930</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1016930</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Wed, 15 Mar 2006 16:12:12 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Wed, 15 Mar 2006 16:12:32 GMT]]></title><description><![CDATA[<p>.... aber include die header mal in der .cpp</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1016931</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1016931</guid><dc:creator><![CDATA[bumbytie]]></dc:creator><pubDate>Wed, 15 Mar 2006 16:12:32 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Thu, 16 Mar 2006 07:17:46 GMT]]></title><description><![CDATA[<p>Dein Problem dürfte wohl sein, daß für den Ausdruck &quot;einWuerfel-&gt;zeichneWuerfel();&quot; die forward-Deklaration auf Wuerfel nicht ausreicht - da brauchst du die komplette Klassendefinition.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1017245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1017245</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 16 Mar 2006 07:17:46 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim Aufruf einer Methode on Thu, 16 Mar 2006 07:41:22 GMT]]></title><description><![CDATA[<p>Hi Marcel,</p>
<blockquote>
<p>Wenn ich nun z.B.: einWuerfel-&gt;zeichnewuerfel(); aufrufe gibt mir der Compiler folgenden Fehler aus.</p>
<p>&quot;error C2228: Der linke Teil von '-&gt;zeichnewuerfel' muss eine Klasse/Struktur/Union sein&quot;</p>
</blockquote>
<p>Geht's vielleicht mit dereferenzieren?</p>
<pre><code class="language-cpp">*(einWuerfel).zeichnewuerfel();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1017257</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1017257</guid><dc:creator><![CDATA[CygnusX-1]]></dc:creator><pubDate>Thu, 16 Mar 2006 07:41:22 GMT</pubDate></item></channel></rss>