<?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[globale Private Variable in einer Klasse deklarieren?]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich hab eine Klasse CTOUCHBAR in der Touchbar.h geschrieben (siehe Code).</p>
<pre><code class="language-cpp">class CTOUCHBAR
{
// Memberfunctions
public:
	CTOUCHBAR( );
	~CTOUCHBAR( );

	char CheckTouch(POINT p);
	void DrawTouchbar(bool mehrfachAnwahl);

private:

	BYTE TouchbarValue;
	bool flagMehrfachAnwahl; //Speicher für die Darstellung des Touchbars
	char CalculateAbsolutValue(POINT p);
	char CalculateInkrementValue(POINT p);

};
</code></pre>
<p>Der Variable &quot;flagMehrfachAnwahl&quot; möchte ich in der Funktion &quot;void DrawTouchbar(bool mehrfachAnwahl)&quot; den Wert mehrfachAnwahl zuweisen (siehe Code Touchbar.c):</p>
<pre><code class="language-cpp">void CTOUCHBAR::DrawTouchbar(bool mehrfachAnwahl)
{
	flagMehrfachAnwahl=mehrfachAnwahl; 
}
</code></pre>
<p>Beim Compilieren kommt die Meldung:<br />
error C2065: 'flagMehrfachAnwahl' : undeclared identifier</p>
<p>Wo muss ich die Variable noch deklarieren so das diese Private und Global in der Klasse verfügbar ist?</p>
<p>Gruß<br />
spacehelix</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/152480/globale-private-variable-in-einer-klasse-deklarieren</link><generator>RSS for Node</generator><lastBuildDate>Mon, 07 Sep 2026 00:48:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/152480.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 06 Jul 2006 15:46:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to globale Private Variable in einer Klasse deklarieren? on Thu, 06 Jul 2006 15:46:54 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich hab eine Klasse CTOUCHBAR in der Touchbar.h geschrieben (siehe Code).</p>
<pre><code class="language-cpp">class CTOUCHBAR
{
// Memberfunctions
public:
	CTOUCHBAR( );
	~CTOUCHBAR( );

	char CheckTouch(POINT p);
	void DrawTouchbar(bool mehrfachAnwahl);

private:

	BYTE TouchbarValue;
	bool flagMehrfachAnwahl; //Speicher für die Darstellung des Touchbars
	char CalculateAbsolutValue(POINT p);
	char CalculateInkrementValue(POINT p);

};
</code></pre>
<p>Der Variable &quot;flagMehrfachAnwahl&quot; möchte ich in der Funktion &quot;void DrawTouchbar(bool mehrfachAnwahl)&quot; den Wert mehrfachAnwahl zuweisen (siehe Code Touchbar.c):</p>
<pre><code class="language-cpp">void CTOUCHBAR::DrawTouchbar(bool mehrfachAnwahl)
{
	flagMehrfachAnwahl=mehrfachAnwahl; 
}
</code></pre>
<p>Beim Compilieren kommt die Meldung:<br />
error C2065: 'flagMehrfachAnwahl' : undeclared identifier</p>
<p>Wo muss ich die Variable noch deklarieren so das diese Private und Global in der Klasse verfügbar ist?</p>
<p>Gruß<br />
spacehelix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092615</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092615</guid><dc:creator><![CDATA[spacehelix]]></dc:creator><pubDate>Thu, 06 Jul 2006 15:46:54 GMT</pubDate></item><item><title><![CDATA[Reply to globale Private Variable in einer Klasse deklarieren? on Thu, 06 Jul 2006 16:37:06 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>also der Code, wie du ihn gepostet hast ist korrekt. Der Zugriff auf die Member Variable stimmt.<br />
Ich denke hier ist der Hund wo anders begraben.</p>
<p>Ich kann mir nicht vorstellen, dass das der einzige Fehler ist den der Compiler liefert.</p>
<p>Es kann mehrere Gruende geben, dass dein Code nicht funktioniert:<br />
z.B.<br />
- Hast du im Implementationfile vllt vergessen den Header zu inkludieren???<br />
- Falls du den VC++ Compiler verwendest (C2065 deutet mal daraufhin): hast du die Compiler option /Za eingeschalten? Da du ein C file hast, wuerde der Compiler in diesem Fall den Code als ANSI C interpretieren und in ANSI C gibt es keine Klassen. Du solltest das File auf alle Faelle in Touchbar.cpp umbenennen.</p>
<p>Aber wie gesagt, ich glaube nicht dass du nur die eine Fehlermeldung bekommst. Poste die anderen, dann kann ich dir weiterhelfen.</p>
<p>Gruesse Georg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092654</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092654</guid><dc:creator><![CDATA[Giorgio]]></dc:creator><pubDate>Thu, 06 Jul 2006 16:37:06 GMT</pubDate></item><item><title><![CDATA[Reply to globale Private Variable in einer Klasse deklarieren? on Fri, 07 Jul 2006 06:28:35 GMT]]></title><description><![CDATA[<p>Hallo Georg,</p>
<p>ich hab da einen kleinen Fehler bei meiner Fehlerbeschreibung gemacht.<br />
Der Fehler Tritt nicht in der beschriebenen Funktion auf, dort wird die Variable erkannt.<br />
Der Fehler tritt in der Funktion &quot;char CheckTouch(POINT p)&quot; auf (siehe Code).</p>
<p>Die Touchbar.c heisst Touchbar.cpp ebenfalls ein Fehler bei meiner Beschreibung (sorry).</p>
<pre><code class="language-cpp">char CheckTouch(POINT p)
{
	//Überprüfen ob der Touch auf dem Touchbar stattgefunden hat
	if ((p.x&gt;=TOUCHBAR_LEFT) &amp;&amp; (p.x&lt;=TOUCHBAR_RIGHT) &amp;&amp; 
		(p.y&gt;=TOUCHBAR_TOP) &amp;&amp; (p.y&lt;=TOUCHBAR_BOTTOM))
	{
		if (flagMehrfachAnwahl==false)
			return CalculateAbsolutValue(p);
		else
			return CalculateInkrementValue(p);	 
	}
	return false;
}
</code></pre>
<p>Also wenn ich die if Abfrage kommentiere, wird das Projekt ohne Fehlermeldung kompiliert. Die Variable &quot;flagMehrfachAnwahl&quot; wird dann in der Funktion &quot;DrawTouchbar(bool mehrfachAnwahl)&quot; erkannt.</p>
<p>Wenn ich den Kommentar rausnehme, kommt die beschriebene Fehlermeldung:<br />
error C2065: 'flagMehrfachAnwahl' : undeclared identifier.</p>
<p>Hab ich in dieser Funktion einen Fehler?</p>
<p>Gruß<br />
spacehelix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092933</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092933</guid><dc:creator><![CDATA[spacehelix]]></dc:creator><pubDate>Fri, 07 Jul 2006 06:28:35 GMT</pubDate></item><item><title><![CDATA[Reply to globale Private Variable in einer Klasse deklarieren? on Fri, 07 Jul 2006 06:33:38 GMT]]></title><description><![CDATA[<p>Diese Funktion ist nicht Member der Klasse CTOUCHBAR. Die Memberfunktion müsste CTOUCHBAR::CheckTouch heißen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092936</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 07 Jul 2006 06:33:38 GMT</pubDate></item><item><title><![CDATA[Reply to globale Private Variable in einer Klasse deklarieren? on Fri, 07 Jul 2006 06:35:00 GMT]]></title><description><![CDATA[<p>Danke für die Hilfe.</p>
<p>Jetzt Funktioniert es.</p>
<p>Gruß spacehelix</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1092937</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1092937</guid><dc:creator><![CDATA[spacehelix]]></dc:creator><pubDate>Fri, 07 Jul 2006 06:35:00 GMT</pubDate></item></channel></rss>